Would you like to make this site your homepage? It's fast and easy...
Yes, Please make this my home page!
/***************************************************************************
*
* File: sqlconst.h
* Created: Tue Dec 14 1999
* (C) 1999 by David M. <captjay@superlink.net>
*
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef SQLCONST_H
#define SQLCONST_H
/* General constants */
#define SELECT " SELECT "
#define FROM " FROM "
#define SELECT_ALL_FROM " SELECT * FROM "
#define WHERE " WHERE "
#define AND_ " AND "
#define OR_ " OR "
#define LIKE " LIKE "
#define EQUALS " = "
#define ORDER_BY " ORDER BY "
/* Utils */
#define UPPER(x) " UPPER(" x ")"
#define UPPER_V(x) " UPPER('" #x "')"
#define QUOTE(x) "'" #x "'"
#define UNIXTIME(x) "IFNULL(UNIX_TIMESTAMP(" x "),0)"
/* Table User */
#define USER_TABLE " user "
#define USERIDX "UserIdx "
#define LOGIN "Login "
#define PASS "Pass "
#define LASTSEEN "LastSeen "
#define LASTIP "LastIP "
#define LASTMODIFBY "LastModifBy "
#define LASTMODIFTS "LastModifTS "
#define LASTMODIF "LastModif "
#define CONSOLE "Console "
#define INFOLINE "Infoline "
#define DEFCHANIDX "DefChanIdx"
/* Table Channel */
#define CHANNEL_TABLE " channel "
#define CHANIDX "ChanIdx"
#define CH_NAME "Name "
/* Associated SQLS */
#define QRY_USER_BY_LOGIN \
SELECT \
USERIDX "," LOGIN "," PASS "," \
UNIXTIME(LASTSEEN) "," LASTIP "," LASTMODIFBY "," \
UNIXTIME(LASTMODIFTS) "," LASTMODIF "," CONSOLE "," \
INFOLINE "," DEFCHANIDX "," CH_NAME \
FROM \
USER_TABLE " user," CHANNEL_TABLE " chan" \
WHERE \
"user." DEFCHANIDX EQUALS "chan." CHANIDX AND_ \
UPPER_V(%s) EQUALS UPPER(LOGIN)
/* Table Access */
#define ACCESS_TABLE " access "
#define ACCESSIDX "AccessIdx "
#define LEVEL "Level "
#define AUTOOP "AutoOp "
#define SUSPBY "SuspBy "
#define SUSPTS "SuspendTS "
#define SUSPREASON "SuspReason "
#define SUSPEXPIRE "SuspExpire "
/* Access SQLs */
#define QRY_ACCESS_BY_USERIDX \
SELECT \
ACCESSIDX "," USERIDX "," "acs." CHANIDX "," CH_NAME "," \
LEVEL "," AUTOOP "," SUSPBY "," \
UNIXTIME(SUSPTS) "," SUSPREASON "," UNIXTIME(SUSPEXPIRE) \
FROM \
ACCESS_TABLE " acs," CHANNEL_TABLE " chan" \
WHERE \
"acs." CHANIDX EQUALS "chan." CHANIDX AND_ \
USERIDX EQUALS "%d"
/* Table host */
#define HOST_TABLE " host "
#define HOSTIDX "HostIdx "
#define MASK "Mask "
/* Host-related SQLS */
/* QRY_ACCEPT_DCC : Determine wether an access matches the given mask */
#define QRY_ACCEPT_DCC \
SELECT \
HOSTIDX \
FROM \
HOST_TABLE \
WHERE \
UPPER_V(%s) LIKE UPPER(MASK)
/* Table server */
#define SERVER_TABLE " server "
#define SERVERIDX "ServerIdx "
#define HOST "Host "
#define PORT "Port "
/* Server-related SQLS */
/* QRY_SERVERLIST : List all servers */
#define QRY_SERVERLIST \
SELECT \
SERVERIDX "," \
HOST "," \
PORT \
FROM \
SERVER_TABLE \
ORDER_BY SERVERIDX
#endif
Generated by: nightsky@centauri on Sat Jan 15 23:06:10 2000, using kdoc 2.0a30. |