シナリオ:
SQL Serverのテーブルと列をざっと見てみましたが、いずれかの列でIDプロパティが有効になっているかどうかがわかりませんでした。 IDが有効になっているかどうかに関係なく、システムテーブルを使用して列名を確認するのではなく、データを使用して列名を取得する必要があります。どのようにそれをしますか?解決策:
選択に$Identityを使用すると、identity列のすべての値が返されます。いくつかのレコードを持つテーブルcustomerがあるとします。
CREATE TABLE Customer (
CustomerId INT Identity(1, 1)
,FirstName VARCHAR(50)
,LastName VARCHAR(50)
,Age SMALLINT
,PhoneNumber CHAR(9)
,DOB DATE
,Gender CHAR(1)
) insert into dbo.Customer(FirstName,LastName,Age)
Values('Aamir','Shahzad',66),
('Raza','M',44) データを含むID列を取得するには、以下の構文を使用できますSchemaName.TableNameから$identityを選択します
dbo.Customerテーブルから値を含むID列を取得するには、次のようにします。以下のスクリプトを使用できます
Select $Identity from dbo.Customer以下の結果が表示されます。
SQLServerでシステムテーブルを使用せずにID列の名前と値を取得する方法ビデオデモ:選択でID列名を指定せずにID列の値を取得する