Cleaned up keywords section. (CVS 959)

FossilOrigin-Name: bb609f96e00fd62d932601c4aa37bc17baa82257
This commit is contained in:
jplyon 2003-05-07 03:59:10 +00:00
parent 8af4d3ace6
commit b2ca13ed4d
3 changed files with 63 additions and 26 deletions

View File

@ -1,5 +1,5 @@
C Restrain\sthe\sflattener\sin\sthe\spresence\sof\souter\sjoins.\s\sTicket\s#306.\s(CVS\s958)
D 2003-05-06T20:35:16
C Cleaned\sup\skeywords\ssection.\s(CVS\s959)
D 2003-05-07T03:59:10
F Makefile.in 004acec253ecdde985c8ecd5b7c9accdb210378f
F Makefile.linux-gcc b86a99c493a5bfb402d1d9178dcdc4bd4b32f906
F README f1de682fbbd94899d50aca13d387d1b3fd3be2dd
@ -155,7 +155,7 @@ F www/faq.tcl 12d1788d4abcfe1ff3054e17605df2418883bf6f
F www/fileformat.tcl d9b586416c0d099b82e02e469d532c9372f98f3f
F www/formatchng.tcl cbaf0f410096c71f86a7537cf9249fa04b9a659c
F www/index.tcl b155eba45136d19e7aa6ba979d4093180c335cf7
F www/lang.tcl 56f4c1996795204317c850ecf039c851692625d4
F www/lang.tcl 46b42bd1b22c6e18c17ebfe3893da57790761b79
F www/mingw.tcl d96b451568c5d28545fefe0c80bee3431c73f69c
F www/nulls.tcl 29497dac2bc5b437aa7e2e94577dad4d8933ed26
F www/omitted.tcl 118062f40a203fcb88b8d68ef1d7c0073ac191ec
@ -165,7 +165,7 @@ F www/speed.tcl cb4c10a722614aea76d2c51f32ee43400d5951be
F www/sqlite.tcl ffde644361e1d8e2a44a235ff23ad3b43d640df2
F www/tclsqlite.tcl 1db15abeb446aad0caf0b95b8b9579720e4ea331
F www/vdbe.tcl 2013852c27a02a091d39a766bc87cff329f21218
P fda637f453d35b74f676997fcf056a948ccd771b
R ce92f17887cce1b923da966e242b319f
U drh
Z ab57ff50799dad75d8d41943b87540c0
P 6d4b6597e560578253960d9876dc8c8657f41fef
R 7baf27040092074ad3a30cf620346b84
U jplyon
Z cc6c263b53146ffd7c6d10d64ce2f2b8

View File

@ -1 +1 @@
6d4b6597e560578253960d9876dc8c8657f41fef
bb609f96e00fd62d932601c4aa37bc17baa82257

View File

@ -1,7 +1,7 @@
#
# Run this Tcl script to generate the sqlite.html file.
#
set rcsid {$Id: lang.tcl,v 1.53 2003/05/04 07:02:55 jplyon Exp $}
set rcsid {$Id: lang.tcl,v 1.54 2003/05/07 03:59:10 jplyon Exp $}
puts {<html>
<head>
@ -1522,24 +1522,61 @@ puts {
<p>The following keywords are used by SQLite. Most are either reserved
words in SQL-92 or were listed as potential reserved words. Those which
aren't are shown in italics. Not all of these words are actually used
by SQLite. SQLite doesn't currently enforce reserved words, so most of
these can actually be used for the names of SQLite objects such as
tables, columns, and views, but they must be generally be enclosed by
brackes or quotes to avoid confusing the parser.</p>
by SQLite. Keywords are not reserved in SQLite. Any Keyword can be used
as an identifier for SQLite objects (columns, databases, indexes, tables,
triggers, views, ...) but must generally be enclosed by brackets or
quotes to avoid confusing the parser. Keyword matching in SQLite is
case-insensitive.</p>
<p><i>_ROWID_</i> <i>ABORT</i> AFTER ALL AND AS ASC <i>ATTACH</i>
BEFORE BEGIN BETWEEN BY CASCADE CASE CHECK <i>CLUSTER</i> COLLATE
COMMIT <i>CONFLICT</i> CONSTRAINT <i>COPY</i> CREATE CROSS
<i>DATABASE</i> DEFAULT DEFERRED DEFERRABLE DELETE <i>DELIMITERS</i>
DESC <i>DETACH</i> DISTINCT DROP EACH ELSE END EXCEPT <i>EXPLAIN</i>
<i>FAIL</i> FOR FOREIGN FROM FULL <i>GLOB</i> GROUP HAVING IGNORE
IMMEDIATE IN <i>INDEX</i> INITIALLY INNER INSERT <i>INSTEAD</i>
INTERSECT INTO IS <i>ISNULL</i> JOIN KEY LEFT LIKE LIMIT MATCH NATURAL
NOT <i>NOTNULL</i> NULL OF <i>OFFSET</i> ON OR ORDER OUTER <i>PRAGMA</i>
PRIMARY <i>RAISE</i> REFERENCES <i>REPLACE</i> RESTRICT RIGHT ROLLBACK
<i>ROW</i> <i>ROWID</i> SELECT SET <i>STATEMENT</i> TABLE <i>TEMP</i>
TEMPORARY THEN TRANSACTION TRIGGER UNION UNIQUE UPDATE USING <i>VACUUM</i>
VALUES VIEW WHEN WHERE</p>
<p>Keywords can be used as identifiers in three ways:</p>
<table>
<tr> <td width=12%> 'keyword'
<td>Interpreted as a literal string if it occurs in a legal string
context, otherwise as an identifier.
<tr> <td> "keyword"
<td>Interpreted as an identifier if it matches a known identifier
and occurs in a legal identifier context, otherwise as a string.
<tr> <td> [keyword]
<td> Always interpreted as an identifer. (This notation is used
by MS Access and SQL Server.)
</table>
<h2>Fallback Keywords</h2>
<p>These keywords can be used as identifiers for SQLite objects without
delimiters.</p>
<p> <i>ABORT</i> AFTER ASC <i>ATTACH</i> BEFORE BEGIN DEFERRED CASCADE
<i>CLUSTER</i> <i>CONFLICT</i> <i>COPY</i> CROSS <i>DATABASE</i>
<i>DELIMITERS</i> DESC <i>DETACH</i> EACH END <i>EXPLAIN</i> <i>FAIL</i>
FOR FULL IGNORE IMMEDIATE INITIALLY INNER <i>INSTEAD</i> KEY LEFT MATCH
NATURAL OF <i>OFFSET</i> OUTER <i>PRAGMA</i> <i>RAISE</i> <i>REPLACE</i>
RESTRICT RIGHT <i>ROW</i> <i>STATEMENT</i> <i>TEMP</i> TEMPORARY TRIGGER
<i>VACUUM</i> VIEW </p>
<h2>Normal keywords</h2>
<p>These keywords can be used as identifiers for SQLite objects, but
must be enclosed in brackets or quotes for SQLite to recognize them as
an identifier.</p>
<p> ALL AND AS BETWEEN BY CASE CHECK COLLATE COMMIT CONSTRAINT CREATE
DEFAULT DEFERRABLE DELETE DISTINCT DROP ELSE EXCEPT FOREIGN FROM
<i>GLOB</i> GROUP HAVING IN <i>INDEX</i> INSERT INTERSECT INTO IS
<i>ISNULL</i> JOIN LIKE LIMIT NOT <i>NOTNULL</i> NULL ON OR ORDER
PRIMARY REFERENCES ROLLBACK SELECT SET TABLE THEN TRANSACTION UNION
UNIQUE UPDATE USING VALUES WHEN WHERE </p>
<h2>Special words</h2>
<p>The following are not keywords in SQLite, but are used as names of
system objects. They can be used as an identifier for a different
type of object.</p>
<p> <i>_ROWID_</i> <i>MAIN</i> OID <i>ROWID</i> <i>SQLITE_MASTER</i>
<i>SQLITE_TEMP_MASTER</i>
</p>
}