اطلاع از کد کلید اصلی در زمان ساخته شدن در SQL Server 2008
با سلام ، من در بانک اطلاعاتی یک فیلد ایجاد دارم از نوع int که مقدار آن هنگام درج اطلاعات آن ردیف به صورت خودکار اضافه میشه (Identity) . حالا می خوام بدانم آیا کدی هست در SQL Server 2008 که بعد از درج یک کاربر از شماره کلید اصلی که به صورت خودکار (Identity) تولید شده مطلع شد در همان لحظه؟ یعنی بفهمم که SQL Server چه عددی را به این فیلد اختصاص داده ، با تشکر
2 پاسخ
سلام.
هر بار که یک رکورد اضافه می کنی، به مقدار Identity یکی اضافه می شه. پس آخرین رکوردی که اضافه میشه دارای بزرگترین مقدار Identity هست. به همین دلیل بعد از هر دستور Insert اگه یه دستور select بنویسی که بزرگترین مقدار Identity رو به دست بیاره، احتمالا بتونی به خواسته ات برسی.
مثلا فرض کن Id از نوع Identity هست و می خوای بزرگترین مقدارش رو به دست بیاری، به صورت زیر:
select Id from [Your Table] where Id>=all(select Id from [Your Table])
سلام به شما دوست عزیز.
شما می تونید با استفاده از تریگر ها به آیدی که تولید شده دسترسی داشته باشید به صورت زیر
insert into ....... values(...)
output inserted.id