PDA

View Full Version : معادل دستور Cut در بانک اطلاعاتی



Boo Ali
یک شنبه 16 اسفند 1383, 11:46 صبح
در صورت امکان راهنمایی فرمایید که چطور می شود داده هایی از یک جدول Cut کرده و در جدول دیگر Paste کرد. یعنی ترکیبی از دو عمل Insert و Delete که پشت سرهم اجرا گردند.

md_bluelily
یک شنبه 16 اسفند 1383, 15:27 عصر
فکر کنم باید Cursor بنویسید.
یعنی دستوری که مستقیما اینکار رو در T-Sql بکنه فکر نکنم باشه.
:موفق:

Boo Ali
یک شنبه 16 اسفند 1383, 16:16 عصر
Curser عملکرد متفاوتی دارد ، در واقع می خواهیم محتویات تمام یک جدول را Cut کرده و در جدول دیگر Paste کنیم.

M.GhanaatPisheh
یک شنبه 16 اسفند 1383, 17:55 عصر
همونجوری که خودتون گفتید
اول Insert توی یه Table دیگه
بعد Delete از جدول اصلی

حالا مشکل کجاست؟

Boo Ali
سه شنبه 18 اسفند 1383, 11:28 صبح
روش Insert و سپس Delete برای تعداد رکوردهای کم بسیار مناسب است ولی برای رکوردهای بالای 10.000 بیسار نا مناسب است.

M.GhanaatPisheh
سه شنبه 18 اسفند 1383, 14:00 عصر
روش Insert و سپس Delete برای تعداد رکوردهای کم بسیار مناسب است ولی برای رکوردهای بالای 10.000 بیسار نا مناسب است.
می شه بگید چرا نا مناسبه؟(برای بالای تعداد 10000)؟

دستوری مثل Cut رو باید خودتون با دستورات زبان SQL بسازید
حالا یا با Cursor جدول رو Scan کنید و یا با Insert و Delete

md_bluelily
سه شنبه 18 اسفند 1383, 16:02 عصر
موافقم.

AminSobati
دوشنبه 24 اسفند 1383, 13:19 عصر
دوست عزیزم،
چنین دستوری(CUT) در SQL Server وجود نداره. برای Move کردن اطلاعات، باید Insert و Delete انجام بدین.
روش Insert و سپس Delete برای تعداد رکوردهای کم بسیار مناسب است ولی برای رکوردهای بالای 10.000 بیسار نا مناسب است.
احتمالا Log File شما شروع به رشد میکنه و فضای بیشتری در هارد دیسک نیاز داره. اگر از قبل حجم Log File بزرگ باشه احتمالا کاهش سرعت وجود نخواهد داشت.