Oluşturma ve tanımlayıcı sütunları değiştirme
Bir kimlik sütun, kimlik numarası otomatik olarak artan bir tablo oluşturmak için kullanabilirsiniz.Tek bir kimlik sütun ve her tablo için bir GUID sütun oluşturabilirsiniz.
kimlik özellik
Kimlik sütunları kimlik özellik'ni kullanarak gerçekleştirebilirsiniz.Bu eklenen ilk satırı için hem bir kimlik numarası belirtmek geliştirici sağlar tablo ( özellik Kimlik kaynağı ) ve art arda gelen kimlik numaralarını. saptamak için çekirdek için eklenecek bir artış ( özellik Kimlik artışı) , Değerleri eklendiğinde bir tablo bir kimlik sütun olanDatabase Engineotomatik olarak oluşturur ve sonraki kimlik değeri ekleyerek artırma çekirdek.Varolan tablo s kimlik sütunu eklediğinizde, kimlik numarası için varolan satırları eklenir tablo başlangıç ve artış değerleri satırları özgün olarak eklenmiş sırayla uygulanır.Kimlik numaraları da eklenen yeni satırlar için oluşturulur.KİMLİK özellik eklemek için varolan bir tablo sütun değiştiremezsiniz.
Tanımlayıcı bir sütun tanımlamak için kimlik özellik kullandığınızda, aşağıdakileri dikkate alın:
Bir tablonun yalnızca bir sütun kimlik özellik ile tanımlanan olabilir ve bu sütun kullanarak tanımlanması gerekir birdecimal,int,numeric,smallint,bigint, ortinyintveri türü.
Başlangıç ve artış belirtilebilir.Her ikisi için de varsayılan değer 1'dir.
Kimlik sütun için null değerlere izin vermek gerekir ve bir DEFAULT tanımı veya nesnenin içermesi gerekir.
Sütun seçme listesinde kimlik özellik ayarlandıktan sonra $ IDENTITY anahtar sözcüğü kullanılarak başvurulabilir.Sütun adı da başvurulabilir.
OBJECTPROPERTY işlev, bir tablo bir IDENTITY sütun varsa ve COLUMNPROPERTY işlev, kimlik sütun adını belirlemek için kullanılabilir olup olmadığını belirlemek için kullanılabilir.
küme IDENTITY_INSERT açıkça eklenecek değer vererek, sütun kimlik özellik devre dışı bırakmak için kullanılır.
Not
Bir kimlik sütun için sık sık silme olan bir tablo varsa, kimlik değerleri arasında boşluklar ortaya çıkabilir.Silinen kimlik değerlerini yeniden değil.Bu tür boşlukları engellemek için kimlik özellik kullanmayın.Bunun yerine, satır eklenir gibi kimlik sütununda varolan değerleri temel alarak yeni bir kimlik değeri belirleyen bir tetikleyici oluşturabilirsiniz.
Genel olarak benzersiz tanımlayıcıları
KİMLİK özellik bir tablo içinde ayrı tablolar, numaralandırma satır otomatik olarak gerçekleştirir, ancak her biri kendi kimlik sütun oluşturur aynı değerleri.Bu, çünkü kimlik özellik yalnızca kullanıldığı tablo için benzersiz olması sağlanır.Uygulama, veritabanı veya ağa bağlı her bilgisayar dünyanın her veritabanında benzersiz bir kimlik sütun oluşturmalısınız, kullanınuniqueidentifierveri türü veNEWID veya NEWSEQUENTIALID() işlev. Buna ek olarak, yeni bir sütun satırı GUID sütun olduğunu belirtmek için ROWGUIDCOL özelliğini uygulayabilirsiniz., Kimlik özellik ile tanımlanmış sütunlar farklıDatabase Engineotomatik olarak oluşturan değerleri bir sütun türü içinuniqueidentifier.Genel olarak benzersiz bir değer eklemek için sütun genel olarak benzersiz bir değer oluşturmak için NEWID veya NEWSEQUENTIALID işlevini kullanan bir varsayılan tanımı oluşturun.Daha fazla bilgi için bkz: Uniqueidentifier veri kullanma.
ROWGUICOL özellik olan sütun seçim listesinde $ ROWGUID anahtar sözcüğünü kullanarak başvurulabilir.Benzer şekilde $ IDENTITY anahtar sözcüğünü kullanarak bir IDENTITY sütun başvurulabilir budur.A tablo sütun kullanarak tanımlanması gerekir ve yalnızca tek bir ROWGUIDCOL sütunu olabiliruniqueidentifierveri türü.The OBJECTPROPERTY (Transact-SQL) function can be used to determine whether a table has a ROWGUIDCOL column, and the COLUMNPROPERTY (Transact-SQL) function can be used to determine the name of the ROWGUIDCOL column.
Aşağıdaki örnek, bir tablo oluşturur biruniqueidentifier Sütun bir birincil anahtar.Örnek kullanırNEWSEQUENTIALID()işlev,DEFAULTyeni satırlar için değerleri sağlamak kısıtlamaThe ROWGUIDCOL özellik uygulananuniqueidentifier sütun; bu nedenle, BT $ ROWGUID anahtar sözcüğü. kullanılarak başvurulabilir.
Bir tablo oluşturduğunuzda, yeni bir kimlik sütun oluşturmak için
Varolan üzerinde yeni bir kimlik sütun oluşturmak için tablo
Bir kimlik sütun silmek için
Nasıl Yapılır: Sütunlar'dan silmek bir tablo (Visual veritabanı araçları)
Kimlik sütunları hakkında bilgi almak için
sys.identity_columns (Transact-SQL)
Belirtilen tablo için geçerli kimlik değerini ve
DBCC CHECKIDENT (Transact-SQL)
Yeni bir başlangıç değerini ayarlamak için