Tanımlayıcılar

Veritabanı nesnesi adı, tanımlayıcı olarak adlandırılır.Everything in Microsoft SQL Server can have an identifier.Sunucular, veritabanları ve veritabanı nesnelerinin (tablolar, görünümler, sütunları, dizinleri, Tetikleyicileri, yordamlar, kısıtlamaları ve kuralları, gibi tanımlayıcıları olabilir.Tanımlayıcılar, çoğu nesneler için gereklidir, ancak kısıtlamaları gibi bazı nesneler için isteğe bağlıdır.

Nesne tanımlayıcısı, nesne tanımlandığında oluşturulur.Tanımlayıcı, sonra nesneyi başvurmak için kullanılır.Örneğin, aşağıdaki ifadeyi tanıtıcısı ile bir tablo oluşturur TableX, iki sütun ile tanımlayıcılar KeyCol ve Description:

CREATE TABLE TableX
(KeyCol INT PRIMARY KEY, Description nvarchar(80))

Bu tablo, adsız bir sınırlama da vardır.The PRIMARY KEY constraint has no identifier.

Tanımlayıcı, harmanlama tanımlandığı düzeyine bağlıdır.Örnek düzey nesneleri, oturumların ve veritabanı adları gibi tanımlayıcıları örneğinin varsayılan harmanlama olarak atanır.Veritabanındaki tablolar, görünümler ve sütun adları, nesne tanımlayıcıları, veritabanının varsayılan harmanlama olarak atanır.Örneğin, küçük/büyük durum farklı adlara sahip iki tablo, büyük/küçük durum duyarlı harmanlamayı bir veritabanında oluşturulan, ancak büyük/küçük durum duyarlı olmayan harmanlama bir veritabanında oluşturulamıyor.

Sınıf tanımlayıcıları

Iki sınıf tanımlayıcılarının vardır:

  • Normal tanımlayıcıları
    Biçimi, tanıtıcıları kurallarıyla uyumlu.Normal tanımlayıcıların içinde kullanıldığında ayrılmış Transact-SQL ifadeler.

    SELECT *
    FROM TableX
    WHERE KeyCol = 124
    
  • Sınırlandırılmış tanımlayıcıları
    Çift tırnak işareti ('') veya köşeli ayraçlar ([]) içine.Biçimi, tanıtıcıları kurallarıyla uyumlu tanıtıcılar ayrılmış değil.Örneğin:

    SELECT *
    FROM [TableX]         --Delimiter is optional.
    WHERE [KeyCol] = 124  --Delimiter is optional.
    

    Tüm kurallarıyla uyumlu tanıtıcılar, sınırlı olmalıdır için tanımlayıcı bir Transact-SQL deyim. Örneğin:

    SELECT *
    FROM [My Table]      --Identifier contains a space and uses a reserved keyword.
    WHERE [order] = 10   --Identifier is a reserved keyword.
    

Normal ve sınırlı tanımlayıcıları, 1 ile 128 karakter içermelidir.Yerel geçici tablolar için tanımlayıcı en çok 116 karakter olabilir.

Kurallar için normal tanımlayıcıları

Biçim, normal tanıtıcıları için kurallar, veritabanı uyumluluk düzeyine bağlıdır.Bu düzey kullanarak ayarlanabilir. alter VERİTABANI.Uyumluluk düzey olduğunda 100, aşağıdaki kurallar uygulanır:

  1. Ilk karakter aşağıdakilerden biri olmalıdır:

    • Unicode Standard 3,2 ile tanımlandığı şekilde BIR harfi.Harflerin Unicode tanımı, a-z (A'dan Z'ye kadar Latin karakterleri ve diğer dillerin harf karakterler içerir.

    • Alt çizgi (_), (@) işareti veya numara işareti (#).

      Bir tanıtıcı başına belirli simgeleri özel anlam SQL Server. Ile başlayan, normal BIR tanıtıcı oturum sırasında her zaman yerel bir değişken veya parametreyi gösterir ve başka türde bir nesne adı olarak kullanılamaz.geçici tablo veya yordamı, bir sayı işareti ile başlayan bir tanımlayıcı gösterir.Çift sayı işaretleri (#) ile başlayan bir tanımlayıcı, geçici bir genel nesne gösterir.Diğer türdeki nesnelerin adları için numara işareti veya çift sayı işareti karakterleri kullanılabilmesine karşın, bu yöntem önerilmez.

      Bazı Transact-SQL işlevler, çift at işareti (@) ile başlayan adları vardır. Bu işlevlerle karışıklığı önlemek için , size ile başlayan adları kullanmamalısınız @@.

  2. Izleyen karakterler aşağıdakiler olabilir:

    • Unicode Standard 3,2 ile tanımlanan harfler.

    • Temel Latince veya diğer Ulusal komut ondalık sayılar.

    • Işareti, dolar işareti ($), sayı işareti veya alt çizgi.

  3. The identifier must not be a Transact-SQL reserved word.SQL Server reserves both the uppercase and lowercase versions of reserved words.

  4. Katıştırılmış boşluklar veya özel karakterler bulunamaz.

  5. Takıma giren karakterlerine izin verilmiyor.

Tanımlayıcılar, ne zaman kullanılır Transact-SQL ifadeleri, bu kurallarıyla uyumlu tanıtıcılar, çift tırnak işareti veya ayraçlar ayrılmış gerekir.

Not

Değişkenler, işlevleri ve saklı yordamlar adlarını kurallarına uymanız gerekir Transact-SQL tanımlayıcılar.