PDA

View Full Version : سوال: حذف دائمی رکوردهای جدول



sm4899
شنبه 16 شهریور 1387, 20:54 عصر
با سلام
در یک برنامه آزمایشی تعداد رکورد از چدول حذف میشوند ولی ظاهر این
رکورد ها حذف فیزیکی نشده اند میشه دستوری برای حذف فیزیکی رکوردها داشت ؟

mostafaaa
شنبه 16 شهریور 1387, 21:14 عصر
یعنی چی فیزیکی؟؟!!

bashir_nashi
شنبه 16 شهریور 1387, 22:29 عصر
سوالت که واضح نیست ولی اگه منظورت اینه که بار بعد که برنامه رو باز کردی رکوردهای حذف شده سر جاشون بودن خوب حتما بعد ار دیلیت آپدیت نکردی

sm4899
شنبه 16 شهریور 1387, 22:58 عصر
یک فیلد اتونامبر دارم
حالا وقتی چند رکورد اضافه میکنم و بعد هم آپدیت مشکلی هم وجود نداره
حالا کل رکوردهارو حذف میکنم و بعد هم آپدیت خوب اینجا هم مشکلی نیست
منتها این با دوباره رکورد جدید اضافه میکنم فیلد اتو نامبر باید از یک شروع کنه ولی
نم این کارو نمی کنه همچنان به عدد خودش اضافه میکنه ؟

kablayi
یک شنبه 17 شهریور 1387, 01:53 صبح
سلام ...
برنامه رو از بیرون VS اجرا کن چون از داخل VS در هر بار اجرای برنامه دیتابیس در پوشه Debug جایگزین میشه و اطلاعات قبلی از بین میره ...
از بیرون که اجرا کنی مشکلی پیش نمیاد ...

mostafaaa
یک شنبه 17 شهریور 1387, 09:20 صبح
منتها این با دوباره رکورد جدید اضافه میکنم فیلد اتو نامبر باید از یک شروع کنه ولی
اگه توی خود اکسس هم تست میکردی میدیدی که فیلدهای AutoNumber به همین شکل هستند و ربطی به .net داره.
اگه شما میخای اینجوری نباشه باید فیلدهات رو از توی .net مقدار دهی کنی.یعنی در واقع توی دیتابیست اونا رو به صورت Number تعریف کنی.

morteza_261
یک شنبه 17 شهریور 1387, 10:16 صبح
سلام
از اونجایی که شما نوع بانک خودتونو ذکر نکردید.
این دستور برای اس کیو ال بکار میره و میاد یه جدول رو خالی میکنه و فیلدهای AutoNumber هم از نو شروع به شماره گذاری میکنه:


Truncate Table نام جدول

اینهم یه نمونه:


PubSqlCom.CommandText = "Truncate Table TblDate"
PubSqlCom.Connection = PubSqlCon
If PubSqlCon.State = ConnectionState.Closed Then PubSqlCon.Open()
PubSqlCom.ExecuteReader()
If PubSqlCon.State = ConnectionState.Open Then PubSqlCon.Close()
End




موفق باشید

sm4899
دوشنبه 18 شهریور 1387, 21:00 عصر
بدون کد نویسی چطور ؟

morteza_261
دوشنبه 18 شهریور 1387, 21:27 عصر
سلام
بعد از اینکه تمام فیلد های جدول رو پاک کردی از صفحه دیزاین جدول فیلدی که AutoNumber هست رو انتخاب میکنی و از اون پایین مقدار identity رو مساوی با no قرار بده و save کن و دوباره مقدار رو برابر true بزار

ایام به کام

sm4899
دوشنبه 18 شهریور 1387, 22:23 عصر
این دستور تمام رکورد های جدول رو حذف میکنه
من میخوام که هیچ اثری از رکوردهای حذف شده باقی نمونه
نه این که رکوردهای جدول ؟
مثلا " توی ویندوز وقتی فایلی حذف میشه درون Recycle Bin قرار میگیره و همواره
قابل بازگشت است پس باید از Recycle Bin خارج بشه تا غیرقابل باگشت بشهظا

من وقتی رکوردی رو حذف میکنم چنین حالتی داره ..

kablayi
سه شنبه 19 شهریور 1387, 14:05 عصر
یعنی بعد از پاک کردن بر میگرده ؟

sm4899
سه شنبه 19 شهریور 1387, 18:38 عصر
رکوردها پاک میشن ولی وقتی دوباره رکورد اول رو وارد میکنم شماره فیلد اتونامبر آن 1 نیست
بلکه مثلا اگه رکورآخر حذف شده 15 با شه حالا رکورد اول 16 میشه

morteza_261
چهارشنبه 20 شهریور 1387, 14:21 عصر
رکوردها پاک میشن ولی وقتی دوباره رکورد اول رو وارد میکنم شماره فیلد اتونامبر آن 1 نیست
بلکه مثلا اگه رکورآخر حذف شده 15 با شه حالا رکورد اول 16 میشه

سلام
اون کدی که برات گذاشته بودم این مشکل رو حل میکنه
من خودم از این کد استفاده میکنم و فیلدها رو که خالی میکنم شمارش از 1 شروع میشه
؟؟؟

saman_itc
چهارشنبه 20 شهریور 1387, 14:42 عصر
واسه accsses چطور!