PDA

View Full Version : آخرین رکورد وارد شده کدومه؟



mehdi_moosavi
یک شنبه 08 شهریور 1383, 10:27 صبح
سلام بدوستان
من یه برنامه در دلفی و اس کیو ال دارم
بنظر شما چطور می تونم بفهمم در یک جدول کدوم رکورد آخر از همه وارد شده؟
وقتی در اس کیو ال یه جدول رو باز می کنیم آیا میشه گفت همیشه رکوردی که
پایین تر از همه قرار گرفته آخرین رکورد وارد شده است؟
یا اینکه نظم دیگه ای وجود داره
متشکرم

JavanSoft
یک شنبه 08 شهریور 1383, 11:10 صبح
Max(Key)

AminSobati
یک شنبه 08 شهریور 1383, 13:07 عصر
دوست عزیزم،
زمانی که یک جدول رو در SQL Server (مثلا محیط Enterprise Manager) باز میکنید، اگر این جدول هیچ نوع ایندکسی نداشته باشه، میتونید نتیجه بگیرید پایین ترین رکورد، آخرین رکورد هستش. اما زمانیکه ایندکس Clustered روی فیلدی مثل LastName بسازید، چون ایندکس Clustered به طور فیزیکی واقعا جدول رو سورت میکنه، دیگه چنین نتیجه گیریی نمیشه کرد. چرا که وقتی یک رکورد با مقدار مثلا 'Jafari' برای فیلد LastName به این جدول وارد بشه، باید در جای صحیحش از نظر ترتیب قرار بگیره، نه در انتهای جدول.
اما اگر ایندکس Clustered روی فیلدی با خاصیت Identity (که مقدار اون اتوماتیک افزایش پیدا میکنه) ساخته میشه، چون همیشه جدیدترین رکورد دارای بیشترین مقدار هستش، بنا به ترتیبی که باید رعایت بشه، همیشه جدیدترین رکورد باید در انتهای جدول قرار بگیره. مگر اینکه موقع ساختن ایندکس، قید کرده باشیم که نحوه سورت، نزولی باشه. در این حالت همیشه جدید ترین رکورد در ابتدای جدول خواهد بود.
اگر در مورد کاری که قصد انجامش رو دارید بیشتر توضیح بدین، شاید توابعی که در SQL Server وجود دارن به کمکتون بیان.

موفق باشین،
امین ثباتی