PDA

View Full Version : ارسال رکورد های یک جدول در local به همان جدول در Server



m.yazdian
چهارشنبه 19 اسفند 1388, 15:25 عصر
دوستان سلامارسال اطلاعات یک رکورد از یک جدول پایگاه داده sqlserver در local به همان جدول در serverاگر از دوستان کسی در این زمینه قبلا فعالیتی انجام داده است لطفا راهنمایی فرماید.باتشکر.

xcomlock
چهارشنبه 19 اسفند 1388, 17:57 عصر
SqlConnection conLocal = new SqlConnection("Server=(local);Database=Laboratory;Integrated Security=SSPI");
SqlConnection conServer = new SqlConnection("Server=(IP Server);Database=Laboratory;Integrated Security=SSPI");
conServer.Open();
SqlCommand commT = new SqlCommand("SELECT COUNT(*) FROM Table_Maghsad", conServer);
SqlBulkCopy copy = new SqlBulkCopy(conServer);
copy.DestinationTableName = "Sending";

copy.ColumnMappings.Add("Fild Mabda", "Fild Maghsad");

conLocal.Open();
SqlDataReader reader = new SqlCommand("SELECT * FROM Table_Mabda", conLocal).ExecuteReader();
copy.WriteToServer(reader);


copy.Close();
reader.Close();
conLocal.Close();
conServer.Close();

این یه نمونه هست.

m.yazdian
پنج شنبه 20 اسفند 1388, 16:27 عصر
سلام


در این مورد لطفا اگر اطلاعاتی دارید راهنمایی فرایید.



نکته:SqlBulkcopy فقط رکوردهای دیتابیس اول را به دیتابیس دوم انتفال می دهد واگر در دیتابیس اول همان رکورد ها ویرایش شده باشد دوباره همه رکورد ها را به دیتابیس دوم انتقال میدهد و رکوردها تکراری می شوند...!!!



در صورتی مه ما میهواهیم که اگر رکوردها در دیتابیس دوم موجود نبود رکورد را کپی کند.

اگر رکوردهای دیتابیس اول در دیتابیس دوم موجود بود دیتابیس دوم Replpace شود.

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

xcomlock
پنج شنبه 20 اسفند 1388, 22:35 عصر
برای این کار شما باید دائما در حال مقایسه دو تا جدول باشین
میشه بگین این برنامه مربوط به چه کاری هست شاید دوستان بهتر بتونن کمکتون کنند