PDA

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



p_ooya
شنبه 09 خرداد 1388, 10:07 صبح
سلام به همه.

من از sql server 2000 استفاده می کنم و تو بانکم جدول موقتی دارم که به صورت دائم تعدادی رکورد میاد توش و بعد هم همه رکورد ها پاک می شوند. مشکل اینجاست که دیروز برای یک آزمایش پنجاه هزار رکورد صوری رو وارد جدول کردم ولی بعد از اینکه رکورد ها رو پاک کردم، حجم فایل مربوط به بانکم (databasename_data) و فایل لاگ ها بدون تغییر مونده. انگار نه انگار که من 50000 رکورد پاک کردم. آیا رکورد ها به صورت منطقی پاک می شوند؟ راه حل چیست؟ سوال دیگه ای که دارم اینه که این فایل databasename_log که همینطور یه بند داره بزرگ میشه. رکورد اضافه میکنم، پاک می کنم، query می گیرم، هر کاری می کنم این فایل بزرگتر میشه. عزیزانی که از این حقیر واردترند، راهنمایی بفرمایید. ضمناً برای delete کردن رگورد ها من از دستور
delete table_name

استفاده کردم. آیا دستور دیگه ای سراغ دارید برای پاک کردن تمام رکورد های جدول. این دستور به نظر میاد که یک حلقه است و برای تعداد زیاد رکورد اندکی طولانی.

پیشاپیش از راهنمایی شما متشکرم.

پویا.

amin_alexi
شنبه 09 خرداد 1388, 11:29 صبح
سلام
هر کاری که روی Database انجام بشه در LogFile ثبت میشه ...
و اگر شما از دستور Delete استفاده کنی هم تمام رکورد های Delete شده ثبت میشه ...
می تونی برای کوچک کردن LogFile هم این کلمه رو تو سایت Search کنی ShrinkFile ....
و برای Delete کردن بدون ثبت در LogFile هم می تونی از این دستور استفاده کنی



truncate table customers
موفق باشی !

p_ooya
شنبه 09 خرداد 1388, 11:56 صبح
سلام
هر کاری که روی Database انجام بشه در LogFile ثبت میشه ...
و اگر شما از دستور Delete استفاده کنی هم تمام رکورد های Delete شده ثبت میشه ...
می تونی برای کوچک کردن LogFile هم این کلمه رو تو سایت Search کنی ShrinkFile ....
و برای Delete کردن بدون ثبت در LogFile هم می تونی از این دستور استفاده کنی



truncate table customersموفق باشی !



سپاس از راهنمایی تون. درمورد خود فایل بانک چی؟ وقتی رکورد ها رو خذف می کنم خود فایل بانک هم بدون تغییر می مونه. در مورد اون نظری دارید؟ یادم میاد اکسس یه کامپکت مانندی داشت. اینجا چطور؟

amin_alexi
شنبه 09 خرداد 1388, 12:12 عصر
سپاس از راهنمایی تون. درمورد خود فایل بانک چی؟ وقتی رکورد ها رو خذف می کنم خود فایل بانک هم بدون تغییر می مونه. در مورد اون نظری دارید؟ یادم میاد اکسس یه کامپکت مانندی داشت. اینجا چطور؟
می تونی از همون ShrinkFile استفاده کنی یه پارامتر داره اون رو تغییر بدی میشه واسه DataFile

p_ooya
شنبه 09 خرداد 1388, 14:18 عصر
می تونی از همون ShrinkFile استفاده کنی یه پارامتر داره اون رو تغییر بدی میشه واسه DataFile

سپاس مجدد. آیا این درسته که عمل shrink کارایی بانک رو پایین میاره؟ سوال دیگه اینکه در همون قسمت اگر پارامترهای مربوط به حجم رو فعال کرد، خودش خودکار shrink می کنه؟ در یه بانک که سرورش روی اینترنته چی؟ با دستورات sql هم میشه اینکار رو انجام داد؟

سپاس.

amin_alexi
شنبه 09 خرداد 1388, 14:47 عصر
سپاس مجدد. آیا این درسته که عمل shrink کارایی بانک رو پایین میاره؟
فکر نمی کنم ! (دقیقا نمی دونم !)

سوال دیگه اینکه در همون قسمت اگر پارامترهای مربوط به حجم رو فعال کرد، خودش خودکار shrink می کنه؟
باید autoshrink رو برای DataBase فعال کنی
با این چک کن آیا فعاله !

Select DATABASEPROPERTYEX( 'DBName' , 'IsAutoShrink' )

با این هم فعالش کن !

EXEC sp_dboption 'DBName', 'autoshrink', 'TRUE'

در آخر هم سعی کن سوالهای مختلف رو در تاپیکهای جدا بپرسی تا برای سایر کابران قابل دسترس تر باشه !
چون معمولا خیلی ها با عنوان تاپیک به تاپیک سر می زنن
:چشمک: