PDA

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



javid_debugger
شنبه 07 آذر 1388, 17:19 عصر
چه طور می تونم 50 تا رکورد از یک جدول را به طور هم زمان حذف کنم؟

AminSobati
شنبه 07 آذر 1388, 21:45 عصر
منظورتون از همزمان چیه؟

mgh64120
شنبه 07 آذر 1388, 23:07 عصر
براي اينكه بتوني اين 50 تا ركورد رو با هم حذف كني بايستي بتوني مثلا اونها رو با هم نمايش بدهي.
واضح تر بگم اين 50 تا ركورد بايد يه خصيصه مشترك داشته باشند يعني حداقل در يك فيلد يكسان باشند.
و با استفاده از دستور Delete مي توني ركوردهايي از جدولت رو حذف كني كه همگي انها در شرط Where صادق باشند.

javid_debugger
یک شنبه 08 آذر 1388, 21:04 عصر
من برای حذف 50 تا رکورد از دستور زیر استفاده می کنم ولی ارور میده:




Delete Top 50 From TableName
Where (True)


لطفا اساتید راهنمایی کنند

Hamid.Kad
یک شنبه 08 آذر 1388, 23:07 عصر
اولاً عدد 50 باید داخل پرانتز قرار بگیره
ثانیاً اون قسمت True اشتباهه. این نوع داده به این صورت وجود نداره. دستور رو بصورت زیر بنویسید:
delete top(50) from TableName

محمد سلیم آبادی
دوشنبه 09 آذر 1388, 02:16 صبح
Delete Top (50) From TableName
Where 1=1

توجه داشته باشید که دستور فوق 50 رکورد اولی که SQL Server به آنها دسترسی پیدا می کند را حذف خواهد کرد. برای اینکه بتوانید از امکان Ordering نیز استفاده کنید:


with c as
(
select top (50) *
from Table_Name
--where your_boolean_expressions
order by columns_list
)
Delete From c