PDA

View Full Version : () time stamp



rezaesmaeli
یک شنبه 30 بهمن 1390, 12:13 عصر
time stampچه کارایی دارد ودرsqlserverکجا استفاده می شود؟:گریه::ناراحت:

tiphooo
دوشنبه 01 اسفند 1390, 23:14 عصر
timestamp یک نوع تعرف داده می باشد و معمولا شماره رکورد ذخیره شده می باشد اگر فیلدی را در یک جدول از نوع AutoNumber تعریف کنیم مقدار آن به ازاء هر رکورد یک واحد افزایش پیدا می کند حال اگر شماره آن را بخواهیم در چند جدول داشته باشیم معمولا یک فیلد از نوع timestamp تعریف می شود اگر در دو جدول در هرکدام یک فیلد از نوع timestamp تعریف کنیم به ازا درج در هرکدام از جداول یک واحد به آن فیلد اضافه می شود یعنی چیزی شبیه به فیلد autoNumber ولی مشترک بین دو جدول
عددی که در آن ذخیره می شود مبنای 16 است و با تبدیل آن به مبنای 10 با Cast as int این مسئله را به خوبی مشاهده می کنید
اگر بخواهیم تئوریک بگوییم در SQLServer یک شمارنده برای درج رکوردها در کل جداول وجود دارد و به ازا درج در هر جدول یک واحد به آن اضافه می شود یعنی هر رکورد در SQLServer یک شناسه دارد (در هر جدولی که باشد) که شناسه آن ، شماره رکورد درج شده است حال اگر بخواهید این شمارنده را دنبال کنید در هر جدول یک فیلد از نوع timestamp تعریف کنید تا شناسه آن رکورد را به شما نشان دهد درضمن در هر جدول نمی توان بیش از یک فیلد از نوع timestamp تعریف کرد چون کلا کار بیخودی است.
متغیر @@DBTS در هر دیتابیس آخرین شماره رکورد درج شده در دیتابیس را در خود دارد
شما با دستور SELECT Cast(@@DBTS AS INT) می توانید آخرین شماره را مشاهده کنید.