PDA

View Full Version : سوال: سوال:پاک کردن رکوردهای حدول از 1ت100



samuel*
سه شنبه 08 مرداد 1392, 22:05 عصر
سلام
میخواستم ببینم راهی هستش که بشه رکوردهای یک جدول رو مثلا از 1تا 100 یا 1 تا 1000 رو پاک کرد مثلا یه کامند باتوم ساخت که با کلیک کردن روش این کار رو بکنه
ممنون

Abbas Amiri
چهارشنبه 09 مرداد 1392, 19:40 عصر
سلام
میخواستم ببینم راهی هستش که بشه رکوردهای یک جدول رو مثلا از 1تا 100 یا 1 تا 1000 رو پاک کرد مثلا یه کامند باتوم ساخت که با کلیک کردن روش این کار رو بکنه
ممنون

اینکه شما می خواهید بر اساس کدام فیلد رکوردها مرتب و حذف شوند مهم است بنابر این بایستی در عبارت SQL آنرا مشخص سازید

به طور کلی با الگوی زیر می توانید اینکار را انجام دهید.


CurrentDb.Execute "DELETE * FROM TableName WHERE ID IN (SELECT TOP 100 " & _
T.ID FROM tablename AS T ORDER BY FieldSorted)", dbFailOnError

samuel*
چهارشنبه 09 مرداد 1392, 21:18 عصر
ببخشید من سوالمو اشتباه مطرح کردم من میخوام fبجز رکوردهای یک ماه اخیرتمام رکوردها رو پاک کنم مثلا وقتی رکوردها برای 6ماه ثبت شده رکوردهای 5ماهه اول رو پاک کنم و یکماهه اخیر باقی بمونه اگه میشه راهنمایی کنید ممنون

master13111
شنبه 12 مرداد 1392, 10:02 صبح
بستگي داره كه ماه رو چجوري تعريف كرده باشيد اما در حالت كلي اين دستور كليه ركوردها بجز سال و ماه مرداد 1392 رو پاك ميكنه
DELETE * FROM Tbl where (mah<>5) and (sal<>1392)

اما اگه فيلد ماه و سال مث بالا جدا نيستن و توي يه فيلد و به صورت تاريخ هستند مثلا 1392/05/15
ميشه اينجوري
DELETE * FROM Tbl where tarikh<1392/05/01
اين دستور هم همه فيلداي قبل از تاريخ مورد نظر رو پاك ميكنه