Componentes.Terceros.RemObj.../internal/5.0.23.613/1/Data Abstract for Delphi/Source/uDASQL92Interfaces.pas
david 2824855ea7 - Modificación del paquete RemObjects_Core_D10 para que sea un paquete de runtime/designtime (antes era designtime sólo)
- Recompilación en Delphi10 de todos los paquetes de RO para generar las DCU's en Lib\D10
- Recompilación en Delphi10 de todos los paquetes de DA para generar las DCU's en Lib\D10

git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.RemObjects@9 b6239004-a887-0f4b-9937-50029ccdca16
2007-09-10 14:06:19 +00:00

283 lines
11 KiB
ObjectPascal

unit uDASQL92Interfaces;
{----------------------------------------------------------------------------}
{ Data Abstract Library - Driver Library }
{ }
{ compiler: Delphi 6 and up }
{ platform: Win32 }
{ }
{ (c)opyright RemObjects Software. all rights reserved. }
{ }
{ Using this code requires a valid license of the Data Abstract }
{ which can be obtained at http://www.remobjects.com. }
{----------------------------------------------------------------------------}
{$I DataAbstract.inc}
interface
function SQL92_IdentifierNeedsQuoting(const iIdentifier: string): boolean;
implementation
uses
SysUtils;
var
sql92_reservedwords : array of string;
function SQL92_IdentifierNeedsQuoting(const iIdentifier: string): boolean;
var
L, H, I, r : Integer;
begin
Result := pos('.', iIdentifier) > 0;
if Result then Exit;
l := 0;
h := Length(sql92_reservedwords) - 1;
while l <= h do begin
i := (L + H) shr 1;
r := CompareText(iIdentifier, sql92_reservedwords[i]);
if r < 0 then h := i - 1 else
if r > 0 then l := i + 1 else begin
result := true;
exit;
end;
end;
end;
procedure SQL92_InitializeReservedWords;
begin
SetLength(sql92_reservedwords, 225);
sql92_reservedwords[0] := 'ABSOLUTE';
sql92_reservedwords[1] := 'ACTION';
sql92_reservedwords[2] := 'ADD';
sql92_reservedwords[3] := 'ALL';
sql92_reservedwords[4] := 'ALLOCATE';
sql92_reservedwords[5] := 'ALTER';
sql92_reservedwords[6] := 'AND';
sql92_reservedwords[7] := 'ANY';
sql92_reservedwords[8] := 'ARE';
sql92_reservedwords[9] := 'AS';
sql92_reservedwords[10] := 'ASC';
sql92_reservedwords[11] := 'ASSERTION';
sql92_reservedwords[12] := 'AT';
sql92_reservedwords[13] := 'AUTHORIZATION';
sql92_reservedwords[14] := 'AVG';
sql92_reservedwords[15] := 'BEGIN';
sql92_reservedwords[16] := 'BETWEEN';
sql92_reservedwords[17] := 'BIT';
sql92_reservedwords[18] := 'BIT_LENGTH';
sql92_reservedwords[19] := 'BOTH';
sql92_reservedwords[20] := 'BY';
sql92_reservedwords[21] := 'CASCADE';
sql92_reservedwords[22] := 'CASCADED';
sql92_reservedwords[23] := 'CASE';
sql92_reservedwords[24] := 'CAST';
sql92_reservedwords[25] := 'CATALOG';
sql92_reservedwords[26] := 'CHAR';
sql92_reservedwords[27] := 'CHAR_LENGTH';
sql92_reservedwords[28] := 'CHARACTER';
sql92_reservedwords[29] := 'CHARACTER_LENGTH';
sql92_reservedwords[30] := 'CHECK';
sql92_reservedwords[31] := 'CLOSE';
sql92_reservedwords[32] := 'COALESCE';
sql92_reservedwords[33] := 'COLLATE';
sql92_reservedwords[34] := 'COLLATION';
sql92_reservedwords[35] := 'COLUMN';
sql92_reservedwords[36] := 'COMMIT';
sql92_reservedwords[37] := 'CONNECT';
sql92_reservedwords[38] := 'CONNECTION';
sql92_reservedwords[39] := 'CONSTRAINT';
sql92_reservedwords[40] := 'CONSTRAINTS';
sql92_reservedwords[41] := 'CONTINUE';
sql92_reservedwords[42] := 'CONVERT';
sql92_reservedwords[43] := 'CORRESPONDING';
sql92_reservedwords[44] := 'COUNT';
sql92_reservedwords[45] := 'CREATE';
sql92_reservedwords[46] := 'CROSS';
sql92_reservedwords[47] := 'CURRENT';
sql92_reservedwords[48] := 'CURRENT_DATE';
sql92_reservedwords[49] := 'CURRENT_TIME';
sql92_reservedwords[50] := 'CURRENT_TIMESTAMP';
sql92_reservedwords[51] := 'CURRENT_USER';
sql92_reservedwords[52] := 'DATE';
sql92_reservedwords[53] := 'DAY';
sql92_reservedwords[54] := 'DEALLOCATE';
sql92_reservedwords[55] := 'DEC';
sql92_reservedwords[56] := 'DECIMAL';
sql92_reservedwords[57] := 'DECLARE';
sql92_reservedwords[58] := 'DEFAULT';
sql92_reservedwords[59] := 'DEFERRABLE';
sql92_reservedwords[60] := 'DEFERRED';
sql92_reservedwords[61] := 'DELETE';
sql92_reservedwords[62] := 'DESC';
sql92_reservedwords[63] := 'DESCRIBE';
sql92_reservedwords[64] := 'DESCRIPTOR';
sql92_reservedwords[65] := 'DIAGNOSTICS';
sql92_reservedwords[66] := 'DISCONNECT';
sql92_reservedwords[67] := 'DISTINCT';
sql92_reservedwords[68] := 'DOMAIN';
sql92_reservedwords[69] := 'DOUBLE';
sql92_reservedwords[70] := 'DROP';
sql92_reservedwords[71] := 'ELSE';
sql92_reservedwords[72] := 'END';
sql92_reservedwords[73] := 'END-EXEC';
sql92_reservedwords[74] := 'ESCAPE';
sql92_reservedwords[75] := 'EXCEPT';
sql92_reservedwords[76] := 'EXCEPTION';
sql92_reservedwords[77] := 'EXEC';
sql92_reservedwords[78] := 'EXECUTE';
sql92_reservedwords[79] := 'EXISTS';
sql92_reservedwords[80] := 'EXTERNAL';
sql92_reservedwords[81] := 'EXTRACT';
sql92_reservedwords[82] := 'FALSE';
sql92_reservedwords[83] := 'FETCH';
sql92_reservedwords[84] := 'FLOAT';
sql92_reservedwords[85] := 'FOR';
sql92_reservedwords[86] := 'FOREIGN';
sql92_reservedwords[87] := 'FOUND';
sql92_reservedwords[88] := 'FROM';
sql92_reservedwords[89] := 'FULL';
sql92_reservedwords[90] := 'GET';
sql92_reservedwords[91] := 'GLOBAL';
sql92_reservedwords[92] := 'GO';
sql92_reservedwords[93] := 'GOTO';
sql92_reservedwords[94] := 'GRANT';
sql92_reservedwords[95] := 'GROUP';
sql92_reservedwords[96] := 'HAVING';
sql92_reservedwords[97] := 'HOUR';
sql92_reservedwords[98] := 'IDENTITY';
sql92_reservedwords[99] := 'IMMEDIATE';
sql92_reservedwords[100] := 'IN';
sql92_reservedwords[101] := 'INDICATOR';
sql92_reservedwords[102] := 'INITIALLY';
sql92_reservedwords[103] := 'INNER';
sql92_reservedwords[104] := 'INPUT';
sql92_reservedwords[105] := 'INSENSITIVE';
sql92_reservedwords[106] := 'INSERT';
sql92_reservedwords[107] := 'INT';
sql92_reservedwords[108] := 'INTEGER';
sql92_reservedwords[109] := 'INTERSECT';
sql92_reservedwords[110] := 'INTERVAL';
sql92_reservedwords[111] := 'INTO';
sql92_reservedwords[112] := 'IS';
sql92_reservedwords[113] := 'ISOLATION';
sql92_reservedwords[114] := 'JOIN';
sql92_reservedwords[115] := 'KEY';
sql92_reservedwords[116] := 'LANGUAGE';
sql92_reservedwords[117] := 'LAST';
sql92_reservedwords[118] := 'LEADING';
sql92_reservedwords[119] := 'LEFT';
sql92_reservedwords[120] := 'LEVEL';
sql92_reservedwords[121] := 'LIKE';
sql92_reservedwords[122] := 'LOCAL';
sql92_reservedwords[123] := 'LOWER';
sql92_reservedwords[124] := 'MATCH';
sql92_reservedwords[125] := 'MAX';
sql92_reservedwords[126] := 'MIN';
sql92_reservedwords[127] := 'MINUTE';
sql92_reservedwords[128] := 'MODULE';
sql92_reservedwords[129] := 'MONTH';
sql92_reservedwords[130] := 'NAMES';
sql92_reservedwords[131] := 'NATIONAL';
sql92_reservedwords[132] := 'NATURAL';
sql92_reservedwords[133] := 'NCHAR';
sql92_reservedwords[134] := 'NEXT';
sql92_reservedwords[135] := 'NO';
sql92_reservedwords[136] := 'NOT';
sql92_reservedwords[137] := 'NULL';
sql92_reservedwords[138] := 'NULLIF';
sql92_reservedwords[139] := 'NUMERIC';
sql92_reservedwords[140] := 'OCTET_LENGTH';
sql92_reservedwords[141] := 'OF';
sql92_reservedwords[142] := 'ON';
sql92_reservedwords[143] := 'ONLY';
sql92_reservedwords[144] := 'OPEN';
sql92_reservedwords[145] := 'OPTION';
sql92_reservedwords[146] := 'OR';
sql92_reservedwords[147] := 'ORDER';
sql92_reservedwords[148] := 'OUTER';
sql92_reservedwords[149] := 'OUTPUT';
sql92_reservedwords[150] := 'OVERLAPS';
sql92_reservedwords[151] := 'PAD';
sql92_reservedwords[152] := 'PARTIAL';
sql92_reservedwords[153] := 'POSITION';
sql92_reservedwords[154] := 'PRECISION';
sql92_reservedwords[155] := 'PREPARE';
sql92_reservedwords[156] := 'PRESERVE';
sql92_reservedwords[157] := 'PRIMARY';
sql92_reservedwords[158] := 'PRIOR';
sql92_reservedwords[159] := 'PRIVILEGES';
sql92_reservedwords[160] := 'PROCEDURE';
sql92_reservedwords[161] := 'PUBLIC';
sql92_reservedwords[162] := 'READ';
sql92_reservedwords[163] := 'REAL';
sql92_reservedwords[164] := 'REFERENCES';
sql92_reservedwords[165] := 'RELATIVE';
sql92_reservedwords[166] := 'RESTRICT';
sql92_reservedwords[167] := 'REVOKE';
sql92_reservedwords[168] := 'RIGHT';
sql92_reservedwords[169] := 'ROLLBACK';
sql92_reservedwords[170] := 'ROWS';
sql92_reservedwords[171] := 'SCHEMA';
sql92_reservedwords[172] := 'SCROLL';
sql92_reservedwords[173] := 'SECTION';
sql92_reservedwords[174] := 'SELECT';
sql92_reservedwords[175] := 'SESSION';
sql92_reservedwords[176] := 'SESSION_USER';
sql92_reservedwords[177] := 'SET';
sql92_reservedwords[178] := 'SIZE';
sql92_reservedwords[179] := 'SMALLINT';
sql92_reservedwords[180] := 'SOME';
sql92_reservedwords[181] := 'SPACE';
sql92_reservedwords[182] := 'SQL';
sql92_reservedwords[183] := 'SQLCODE';
sql92_reservedwords[184] := 'SQLERROR';
sql92_reservedwords[185] := 'SQLSTATE';
sql92_reservedwords[186] := 'SQLWARNING';
sql92_reservedwords[187] := 'SUBSTRING';
sql92_reservedwords[188] := 'SUM';
sql92_reservedwords[189] := 'SYSTEM_USER';
sql92_reservedwords[190] := 'TABLE';
sql92_reservedwords[191] := 'TEMPORARY';
sql92_reservedwords[192] := 'THEN';
sql92_reservedwords[193] := 'TIME';
sql92_reservedwords[194] := 'TIMESTAMP';
sql92_reservedwords[195] := 'TIMEZONE_HOUR';
sql92_reservedwords[196] := 'TIMEZONE_MINUTE';
sql92_reservedwords[197] := 'TO';
sql92_reservedwords[198] := 'TRAILING';
sql92_reservedwords[199] := 'TRANSACTION';
sql92_reservedwords[200] := 'TRANSLATE';
sql92_reservedwords[201] := 'TRANSLATION';
sql92_reservedwords[202] := 'TRIM';
sql92_reservedwords[203] := 'TRUE';
sql92_reservedwords[204] := 'UNION';
sql92_reservedwords[205] := 'UNIQUE';
sql92_reservedwords[206] := 'UNKNOWN';
sql92_reservedwords[207] := 'UPDATE';
sql92_reservedwords[208] := 'UPPER';
sql92_reservedwords[209] := 'USAGE';
sql92_reservedwords[210] := 'USER';
sql92_reservedwords[211] := 'USING';
sql92_reservedwords[212] := 'VALUE';
sql92_reservedwords[213] := 'VALUES';
sql92_reservedwords[214] := 'VARCHAR';
sql92_reservedwords[215] := 'VARYING';
sql92_reservedwords[216] := 'VIEW';
sql92_reservedwords[217] := 'WHEN';
sql92_reservedwords[218] := 'WHENEVER';
sql92_reservedwords[219] := 'WHERE';
sql92_reservedwords[220] := 'WITH';
sql92_reservedwords[221] := 'WORK';
sql92_reservedwords[222] := 'WRITE';
sql92_reservedwords[223] := 'YEAR';
sql92_reservedwords[224] := 'ZONE';
end;
initialization
sql92_InitializeReservedWords;
finalization
sql92_reservedwords := nil;
end.