PDA

View Full Version : چگونه از یک رکود به تعداد خاصی تولید کنیم



bitcob589
جمعه 17 آبان 1392, 09:15 صبح
با سلام
چگونه از یک رکود خاصی از دیتابیس به تعداد 5000 رکود ایجاد نماییم.

حمیدرضاصادقیان
جمعه 17 آبان 1392, 19:46 عصر
سلام.
یکی از راهها استفاده از ترکیب CTE با Cross Join هست.
نمونه داده رو قرار بدید.
شما میتونید رکورد مورد نظر رو در Cte ایجاد کنید و در بیرون از CTE با Cross Join خود CTE این رکورد رو ایجاد کنید.(البته تعدادش زیاد میشه)
میتونید در همون CTE با استفاده از Recursive CTE یک تعداد محدودی نیز ایجاد کنید.
لطفا بفرمایید دلیل این کارتون چیه و دقیقا چه چیزی مدنظرتون هست شاید راه حل مناسبتری نیز وجود داشته باشه.

bitcob589
جمعه 17 آبان 1392, 22:37 عصر
برای تست یک پروژه نیاز به حجم زیاد دیتابیس می باشم به همین دلیل نیاز به یک دیتابیس با حجم زیاد و رکود زیاد می باشم

حمیدرضاصادقیان
یک شنبه 19 آبان 1392, 19:31 عصر
شما میتونید مثلا با استفاده از جداول Sysobjects وچند تا Cross Join ساده یک حجم انبوهی از داده هارو تولید کنید.
همچنین میتونید از ابزاری مثل این (http://msdn.microsoft.com/en-us/library/dd193262(v=vs.100).aspx) استفاده کنید.

محمد سلیم آبادی
دوشنبه 27 آبان 1392, 10:28 صبح
برای تکثیر یک سطر به اندازه ی معین می بایست از جدولی به نام TallyTable که شامل اعداد متوالی 1 تا N هست استفاده نمود.
کافیه جدول مورد نظر را با این جدول ضرب نموده و مقدار N را نیز تعیین کنید.
مثال:

SELECT t.* FROM table_name AS t
CROSS APPLY tallyTable AS tt
WHERE tt.nbr <=5000;