PDA

View Full Version : کپی اطلاعات جدول در یکدیگر



mokamel
شنبه 19 اردیبهشت 1394, 20:40 عصر
سلام
دوستان من دوتا جدول در دوتا دیتابیس محتلف دارم . تمامی مقادیر جدول ها یکشان هستند یعنی جدول 1 در دیتابیس 1 دقیقا مقادیر و نحوه طراحی و ... آنها با جدول 2 در دیتابیس 2 یکسان است . حالا می خوام مقادیر جدول 1 را در جدول 2 کپی کنم . فقط نکته ای که می ماند این است که با توجه به شرایط زیر چگونه باید اینکار را انجام دهم ؟
1- فیلد ID در جداول بصورت uniquntifier تعریف شده است
سوال : چگونه این کار را انجام دهم ( بدون در نظر گرفتن مورد پایین )؟

اگر این جداول با یکسری از جداول دیگر دیتابیس دارای رابطه است باشد آنهم از طریق همان ID که در همه جداول دیتابیس 2 بصورت uniqutifier تعریف شده است . چگونه ؟ یعنی مثلا در این جدول که میخواهیم کپی کنیم تو جدول 2 . در جدول 2 کد ID یکسری از جداول دیگر هم باید در هر row آن باشد .

golbafan
شنبه 19 اردیبهشت 1394, 20:46 عصر
بجای کپی کردن میتونید از union استفاده کنید تا نتیجه آن جمع دو جدول باشد

مثال:

select * from tbl1
union
select * from tbl2

pezhvakco
یک شنبه 20 اردیبهشت 1394, 12:52 عصر
برای اضافه کردن ردیف های جدول اول در دوم میشه با دستور Insert Into کار کرد و در این دستور نام ستون ها را بدون اون ستون ID بنویسید.


Insert Into DataBase02.[dbo].Table01
(Col01 ,Col02 ,Col03)
SELECT Col01 ,Col02 ,Col03
FROM DataBase01.[dbo].Table01


اگر ستون ID با ساختار Identity باشد، مقدار اون در ادامه مقدار های قبلی داده می شود
اگر ساختار این ستون Identity نباشد باید مقدار هر ردیف رو با کد دستور بسازید.

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

اگه خواسته رو بهتر و کامل بنویسید شاید روش بهتری پیدا کنند دوستان استاد در این سایت.