PDA

View Full Version : مشکل در حذف رکورد



d_rabiee
چهارشنبه 26 خرداد 1389, 11:23 صبح
سلام،

میخوام از یک جدول که حدود دو میلیون رکورد داره ، پانصد هزار تاشو با دستور زیر(که از داخل یک proc با آرگومان value@ فراخوانی میشه) حذف کنم
DELETE FROM Mytable where c2=@value

اما با خطای زیر مواجه می شم. این رو هم بگم که c2 فیلد کلید نیست.

Msg 9002, Level 17, State 2, Line 1
The transaction log for database 'Mydb' is full. To find out why space in the log cannot be reused, see the log_reuse_wait_desc column in sys.databases


چطور میشه تعداد زیادی رکورد رو از یک جدول که حاوی تعداد زیادی رکورد هست حذف کرد. البته دستور delete رو در یک کرسر قرار دادم تا where اون روی فیلد کلید عمل کنه و البته جواب مثبت هم گرفتم اما نمی خوام از کرسر استفاده کنم و دنبال راه حل دیگری هستم.

svahidm
چهارشنبه 26 خرداد 1389, 13:12 عصر
فكر كنم با shrink ديتابيس كارت حل بشه

d_rabiee
شنبه 29 خرداد 1389, 10:14 صبح
فكر كنم با shrink ديتابيس كارت حل بشه
تصور می کنم این کار یک امر مدیریتی است که دادن امکان اون به کاربران خیلی منطقی نیست. در ضمن من شنیدم این کار برای کم کردن فاصله های خالی بین پیج ها است، ولی دیتابیس من هیچ جای خالی نداره.