Parole chiave riservate (Transact-SQL)
Data aggiornamento: 17 luglio 2006
Microsoft SQL Server 2005 utilizza parole chiave riservate per la definizione, la modifica di database e il relativo accesso. Le parole chiave riservate fanno parte della grammatica del linguaggio Transact-SQL utilizzata da SQL Server per analizzare e interpretare istruzioni e batch Transact-SQL. Nonostante da un punto di vista sintattico sia possibile utilizzare le parole chiave riservate di SQL Server come identificatori e nomi di oggetto all'interno di script Transact-SQL, in tal caso è necessario utilizzare identificatori delimitati.
Nella tabella seguente vengono elencate le parole chiave riservate di SQL Server.
ADD |
EXISTS |
PRIMARY |
ALL |
EXIT |
|
ALTER |
EXTERNAL |
PROC |
AND |
FETCH |
PROCEDURE |
ANY |
FILE |
PUBLIC |
AS |
FILLFACTOR |
RAISERROR |
ASC |
FOR |
READ |
AUTHORIZATION |
FOREIGN |
READTEXT |
BACKUP |
FREETEXT |
RECONFIGURE |
BEGIN |
FREETEXTTABLE |
REFERENCES |
BETWEEN |
FROM |
REPLICATION |
BREAK |
FULL |
RESTORE |
BROWSE |
FUNCTION |
RESTRICT |
BULK |
GOTO |
RETURN |
BY |
GRANT |
REVERT |
CASCADE |
GROUP |
REVOKE |
CASE |
HAVING |
RIGHT |
CHECK |
HOLDLOCK |
ROLLBACK |
CHECKPOINT |
IDENTITY |
ROWCOUNT |
CLOSE |
IDENTITY_INSERT |
ROWGUIDCOL |
CLUSTERED |
IDENTITYCOL |
RULE |
COALESCE |
SE |
SAVE |
COLLATE |
IN |
SCHEMA |
COLUMN |
INDEX |
SECURITYAUDIT |
COMMIT |
INNER |
SELECT |
COMPUTE |
INSERT |
SESSION_USER |
CONSTRAINT |
INTERSECT |
SET |
CONTAINS |
INTO |
SETUSER |
CONTAINSTABLE |
IS |
SHUTDOWN |
CONTINUE |
JOIN |
SOME |
CONVERT |
KEY |
STATISTICS |
CREATE |
KILL |
SYSTEM_USER |
CROSS |
LEFT |
TABLE |
CURRENT |
LIKE |
TABLESAMPLE |
CURRENT_DATE |
LINENO |
TEXTSIZE |
CURRENT_TIME |
LOAD |
THEN |
CURRENT_TIMESTAMP |
NATIONAL |
TO |
CURRENT_USER |
NOCHECK |
TOP |
CURSOR |
NONCLUSTERED |
TRAN |
DATABASE |
NOT |
TRANSACTION |
DBCC |
NULL |
TRIGGER |
DEALLOCATE |
NULLIF |
TRUNCATE |
DECLARE |
OF |
TSEQUAL |
DEFAULT |
OFF |
UNION |
DELETE |
OFFSETS |
UNIQUE |
DENY |
ON |
UNPIVOT |
DESC |
OPEN |
UPDATE |
DISK |
OPENDATASOURCE |
UPDATETEXT |
DISTINCT |
OPENQUERY |
USE |
DISTRIBUTED |
OPENROWSET |
USER |
DOUBLE |
OPENXML |
VALUES |
DROP |
OPTION |
VARYING |
DUMP |
OR |
VIEW |
ELSE |
ORDER |
WAITFOR |
FINE |
OUTER |
WHEN |
ERRLVL |
OVER |
WHERE |
ESCAPE |
PERCENT |
WHILE |
EXCEPT |
PIVOT |
WITH |
EXEC |
PLAN |
WRITETEXT |
EXECUTE |
PRECISION |
Lo standard SQL-2003 definisce inoltre un elenco di parole chiave riservate distinto. Non utilizzare le parole chiave riservate di SQL-2003 per i nomi di oggetto e gli identificatori. Le parole chiave riservate di ODBC, elencate nella tabella seguente, corrispondono a quelle di SQL-2003.
[!NOTA] L'elenco delle parole chiave riservate di SQL-2003 può essere più restrittivo o meno restrittivo rispetto a quello di SQL Server. L'elenco delle parole chiave riservate di SQL-2003 include ad esempio INT, che in SQL Server non è necessario contrassegnare come parola chiave riservata.
È possibile utilizzare le parole chiave riservate Transact-SQL come identificatori o nomi di database o di oggetti di database, ad esempio tabelle, colonne, viste e così via. A tale scopo, utilizzare identificatori tra virgolette o delimitati. È inoltre possibile utilizzare le parole chiave riservate come nomi di variabili e parametri di stored procedure. Per ulteriori informazioni, vedere Utilizzo degli identificatori come nomi di oggetti.
Parole chiave riservate di ODBC
Le parole elencate di seguito sono riservate per l'utilizzo in chiamate di funzioni di ODBC. Queste parole non limitano la grammatica SQL minima. Tuttavia, per garantire la compatibilità con driver che supportano la grammatica SQL di base, è consigliabile evitare l'utilizzo di queste parole riservate nelle applicazioni.
Di seguito è riportato l'elenco corrente delle parole chiave riservate di ODBC.
ABSOLUTE |
EXEC |
OVERLAPS |
ACTION |
EXECUTE |
PAD |
ADA |
EXISTS |
PARTIAL |
ADD |
EXTERNAL |
PASCAL |
ALL |
EXTRACT |
POSITION |
ALLOCATE |
FALSE |
PRECISION |
ALTER |
FETCH |
PREPARE |
AND |
FIRST |
PRESERVE |
ANY |
FLOAT |
PRIMARY |
ARE |
FOR |
PRIOR |
AS |
FOREIGN |
PRIVILEGES |
ASC |
FORTRAN |
PROCEDURE |
ASSERTION |
FOUND |
PUBLIC |
AT |
FROM |
READ |
AUTHORIZATION |
FULL |
REAL |
AVG |
GET |
REFERENCES |
BEGIN |
GLOBAL |
RELATIVE |
BETWEEN |
GO |
RESTRICT |
BIT |
GOTO |
REVOKE |
BIT_LENGTH |
GRANT |
RIGHT |
BOTH |
GROUP |
ROLLBACK |
BY |
HAVING |
ROWS |
CASCADE |
HOUR |
SCHEMA |
CASCADED |
IDENTITY |
SCROLL |
CASE |
IMMEDIATE |
SECOND |
CAST |
IN |
SECTION |
CATALOG |
INCLUDE |
SELECT |
CHAR |
INDEX |
SESSION |
CHAR_LENGTH |
INDICATOR |
SESSION_USER |
CHARACTER |
INITIALLY |
SET |
CHARACTER_LENGTH |
INNER |
SIZE |
CHECK |
INPUT |
SMALLINT |
CLOSE |
INSENSITIVE |
SOME |
COALESCE |
INSERT |
SPACE |
COLLATE |
INT |
SQL |
COLLATION |
INTEGER |
SQLCA |
COLUMN |
INTERSECT |
SQLCODE |
COMMIT |
INTERVAL |
SQLERROR |
CONNECT |
INTO |
SQLSTATE |
CONNECTION |
IS |
SQLWARNING |
CONSTRAINT |
ISOLATION |
SUBSTRING |
CONSTRAINTS |
JOIN |
SUM |
CONTINUE |
KEY |
SYSTEM_USER |
CONVERT |
LANGUAGE |
TABLE |
CORRESPONDING |
LAST |
TEMPORARY |
COUNT |
LEADING |
THEN |
CREATE |
LEFT |
TIME |
CROSS |
LEVEL |
TIMESTAMP |
CURRENT |
LIKE |
TIMEZONE_HOUR |
CURRENT_DATE |
LOCAL |
TIMEZONE_MINUTE |
CURRENT_TIME |
LOWER |
TO |
CURRENT_TIMESTAMP |
MATCH |
TRAILING |
CURRENT_USER |
MAX |
TRANSACTION |
CURSOR |
MIN |
TRANSLATE |
DATE |
MINUTE |
TRANSLATION |
DAY |
MODULE |
TRIM |
DEALLOCATE |
MONTH |
TRUE |
DEC |
NAMES |
UNION |
DECIMAL |
NATIONAL |
UNIQUE |
DECLARE |
NATURAL |
UNKNOWN |
DEFAULT |
NCHAR |
UPDATE |
DEFERRABLE |
NEXT |
UPPER |
DEFERRED |
NO |
USAGE |
DELETE |
NONE |
USER |
DESC |
NOT |
USING |
DESCRIBE |
NULL |
VALUE |
DESCRIPTOR |
NULLIF |
VALUES |
DIAGNOSTICS |
NUMERIC |
VARCHAR |
DISCONNECT |
OCTET_LENGTH |
VARYING |
DISTINCT |
OF |
VIEW |
DOMAIN |
ON |
WHEN |
DOUBLE |
ONLY |
WHENEVER |
DROP |
OPEN |
WHERE |
ELSE |
OPTION |
WITH |
END |
OR |
WORK |
END-EXEC |
ORDER |
WRITE |
ESCAPE |
OUTER |
YEAR |
EXCEPT |
OUTPUT |
ZONE |
EXCEPTION |
|
|
Parole chiave di versioni future
Nelle versioni future di SQL Server le parole chiave elencate di seguito potrebbero diventare riservate in seguito all'implementazione di nuove funzionalità. È consigliabile evitare l'utilizzo di queste parole come identificatori.
ABSOLUTE |
FREE |
PRESERVE |
ACTION |
FULLTEXTTABLE |
PRIOR |
ADMIN |
GENERAL |
PRIVILEGES |
AFTER |
GET |
READS |
AGGREGATE |
GLOBAL |
REAL |
ALIAS |
GO |
RECURSIVE |
ALLOCATE |
GROUPING |
REF |
ARE |
HOST |
REFERENCING |
ARRAY |
HOUR |
RELATIVE |
ASSERTION |
IGNORE |
RESULT |
AT |
IMMEDIATE |
RETURNS |
BEFORE |
INDICATOR |
ROLE |
BINARY |
INITIALIZE |
ROLLUP |
BIT |
INITIALLY |
ROUTINE |
BLOB |
INOUT |
ROW |
BOOLEAN |
INPUT |
ROWS |
BOTH |
INT |
SAVEPOINT |
BREADTH |
INTEGER |
SCROLL |
CALL |
INTERVAL |
SCOPE |
CASCADED |
ISOLATION |
SEARCH |
CAST |
ITERATE |
SECOND |
CATALOG |
LANGUAGE |
SECTION |
CHAR |
LARGE |
SEQUENCE |
CHARACTER |
LAST |
SESSION |
CLASS |
LATERAL |
SETS |
CLOB |
LEADING |
SIZE |
COLLATION |
LESS |
SMALLINT |
COMPLETION |
LEVEL |
SPACE |
CONNECT |
LIMIT |
SPECIFIC |
CONNECTION |
LOCAL |
SPECIFICTYPE |
CONSTRAINTS |
LOCALTIME |
SQL |
CONSTRUCTOR |
LOCALTIMESTAMP |
SQLEXCEPTION |
CORRESPONDING |
LOCATOR |
SQLSTATE |
CUBE |
MAP |
SQLWARNING |
CURRENT_PATH |
MATCH |
START |
CURRENT_ROLE |
MINUTE |
STATE |
CYCLE |
MODIFIES |
STATEMENT |
DATA |
MODIFY |
STATIC |
DATE |
MODULE |
STRUCTURE |
DAY |
MONTH |
TEMPORARY |
DEC |
NAMES |
TERMINATE |
DECIMAL |
NATURAL |
THAN |
DEFERRABLE |
NCHAR |
TIME |
DEFERRED |
NCLOB |
TIMESTAMP |
DEPTH |
NEW |
TIMEZONE_HOUR |
DEREF |
NEXT |
TIMEZONE_MINUTE |
DESCRIBE |
NO |
TRAILING |
DESCRIPTOR |
NONE |
TRANSLATION |
DESTROY |
NUMERIC |
TREAT |
DESTRUCTOR |
OBJECT |
TRUE |
DETERMINISTIC |
OLD |
UNDER |
DICTIONARY |
ONLY |
UNKNOWN |
DIAGNOSTICS |
OPERATION |
UNNEST |
DISCONNECT |
ORDINALITY |
USAGE |
DOMAIN |
OUT |
USING |
DYNAMIC |
OUTPUT |
VALUE |
EACH |
PAD |
VARCHAR |
END-EXEC |
PARAMETER |
VARIABLE |
EQUALS |
PARAMETERS |
WHENEVER |
EVERY |
PARTIAL |
WITHOUT |
EXCEPTION |
PATH |
WORK |
FALSE |
POSTFIX |
WRITE |
FIRST |
PREFIX |
YEAR |
FLOAT |
PREORDER |
ZONE |
FOUND |
PREPARE |
Vedere anche
Riferimento
SET QUOTED_IDENTIFIER (Transact-SQL)
Altre risorse
Parole chiave riservate di Transact-SQL
Guida in linea e informazioni
Cronologia modifiche
Versione | Cronologia |
---|---|
17 luglio 2006 |
|