نمایش نتایج 1 تا 15 از 15

نام تاپیک: پاک کردن تمام اطلاعات در دیتابیس

  1. #1

    پاک کردن تمام اطلاعات در دیتابیس

    سلام
    با چه دستوری(scrip) می تونم تمام اطلاعات یک دیتابیس رو پاک کنم؟
    ممنون
    آخرین ویرایش به وسیله Arash_janusV3 : سه شنبه 14 دی 1389 در 11:09 صبح

  2. #2
    کاربر دائمی
    تاریخ عضویت
    مهر 1388
    محل زندگی
    کرج
    پست
    495

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    سلام فکر می کنم با دستور Truncate تمام رکوردهای یک جدول رو می تونی پاک کنی اگه اشتباه نکنم فیلد ID هم بعد از اون دیگه از یک شروع می شه

  3. #3
    کاربر دائمی آواتار parsidev
    تاریخ عضویت
    شهریور 1384
    محل زندگی
    همین حوالی
    پست
    258

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

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

    Delete * from tablename


    کوئری بالا رو اجرا کنید و به جای tablename نام جدول مورد نظر رو بذارین
    با احترام

  4. #4
    کاربر تازه وارد آواتار bahar123
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    Shiraz , Iran
    پست
    40

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    سلام
    دستوری برای اینکار وجود ندارد
    میتونی یک sp بنویسی و این دستور رو برای تک تک جداولت بنویسی و در انتها executeش کنی:

    truncate table <table name>

  5. #5

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    سلام.

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

    Delete * from tablename
    این دستور اشتباه هست و نیازی به * نیست.
    دستوری برای اینکار وجود ندارد
    میتونی یک sp بنویسی و این دستور رو برای تک تک جداولت بنویسی و در انتها executeش کنی
    نیازی به اینکار نیست.
    میشه باکد زیر خیلی راحت اینکارو انجام داد.

    Exec Sp_MsforEachTable 'Delete from ?'

    با این دستور تمامی رکوردهای موجود در تمامی جداول در یک دیتابیس حذف خواهد شد.

    موفق باشید
    آخرین ویرایش به وسیله حمیدرضاصادقیان : سه شنبه 14 دی 1389 در 23:54 عصر

  6. #6
    کاربر دائمی آواتار parsidev
    تاریخ عضویت
    شهریور 1384
    محل زندگی
    همین حوالی
    پست
    258

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    این دستور اشتباه هست و نیازی به * نیست.
    دستوری برای اینکار وجود ندارد
    میتونی یک sp بنویسی و این دستور رو برای تک تک جداولت بنویسی و در انتها executeش کنی
    درسته یه اشتباه از من بود...
    ستاره برای حذف کاربردی نداره

  7. #7

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    با تشکر از همه دوستان به خصوص جناب حمیدرضا صادقیان
    من یک امکانی رو می خوام به برنامه ام اضافه کنم تحت عنوان حذف اطلاعات برنامه به خاطر همین باید بتونم اطلاعات کل دیتابیس رو یک جا حذف کنم اگر یک scrip هم باشه کارم راه می افته
    من در تمام فرمهام حذف table رو دارم و بخاطر زیاد بودن انها و گرفتن وقت زیاد می خوام این امکان هم باشه


    Exec Sp_MsforEachTable 'Delete from ?'


    آیا این دستور اطلاعات دیتابیس رو حذف می کنه؟؟؟
    ممنون

  8. #8

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    لطفا کار علامت سوال رو هم در پارامتر این پروسیجر توضیح بدید. چه دستوراتی رو میشه به عنوان پارامتر به اون فرستاد و اون چطوری دستورات رو اجرا میکنه؟

  9. #9

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    سلام.
    این دستور در واقع خودش یک Cursor رو اجرا میکنه و روی دیتابیسی که در حال اجراست دستور ارسال شده رو برای همه جداول انجام خواهد داد.
    کار علامت سوال در واقع یعنی اینکه همه جداول رو شامل بشه.
    برای توضیحات بیشتر این لینک رو نگاه کنید.

  10. #10

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    در لینکهای زیر اطلاعات کاملی وجو داره
    http://forum.codecorona.com/showthread.php?tid=1180
    http://vahidnasiri.blogspot.com/2009/03/sql-server.html

  11. #11

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    سلام
    باتشکر از دوستان
    همه چی حل شده
    فقط من فزاموش کرده بودم که یک table هام نباید داده هاش خالی بشه در scrip delet باید چه دستوری رو بهش اضافه کنیم؟
    اگر برای trigger هم بگید خیلی خیلی ممنون می شم
    باسپاس

  12. #12

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    همون دستور منتهي به اينصورت:

    sp_msForeachTable 'if ''?''<>'tblUsers' delete from ?'

    يا يك چيزي تو اين مايه ها ببين كار ميكنه.

  13. #13

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    من هنور نتونستم اطلاعات یک table رو نگه دارم بقیه رو پاک کنم
    لطفا راهنمایی کنید
    ممنون

  14. #14

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    نقل قول نوشته شده توسط Arash_janusV3 مشاهده تاپیک
    سلام
    باتشکر از دوستان
    همه چی حل شده
    فقط من فزاموش کرده بودم که یک table هام نباید داده هاش خالی بشه در scrip delet باید چه دستوری رو بهش اضافه کنیم؟
    اگر برای trigger هم بگید خیلی خیلی ممنون می شم
    باسپاس
    من هنوز این مشکل رو دارم
    ممنون

  15. #15

    نقل قول: پاک کردن تمام اطلاعات در دیتابیس

    كافي بود يك ذره خودت كار ميكردي و امتحان ميكردي تا دقيقا به همون جوابي كه من رسيدم ميرسيدي:
    EXEC sp_msforeachtable 'if ''"?"''<>''"[dbo].[t]"'' select * from ?'

    t نام جدوليه كه نميخوايم select گرفته بشه. حالا شما جاي select از delete يا هر چيز ديگه اي كه ميخواي استفاده كن
    پرسيدن خوبه. ولي دنبال كردن سرنخ و يادگيري خود آدم خيلي بهتر از اينه كه لقمه رو آماده بدن به ما.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •