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

PRINT

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.

ms189822.note(it-it,SQL.90).gifNota:
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.

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

 

 

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

Versione Cronologia

17 luglio 2006

Nuovo contenuto:
  • Aggiunta di EXTERNAL, PIVOT, REVERT, TABLESAMPLE, SECURITYAUDIT e UNPIVOT all'elenco delle parole riservate.

Aggiunte alla community

AGGIUNGI
Mostra: