SqlCommand cmd = new SqlCommand("SELECT (DEPOFISID+20000)*-1 AS DEPOFISID,[TARIH],'ELEKTRA' AS [YETKILI],[ISLEM],[ENO],'BEACH AKTARIM' AS [ACIKLAMA],[GDEPOID],[CDEPOID],[TADET],[TTUTAR],[GSKODU],[CSKODU],[URUNFISID],[URETILDI],[LOGOAKTAR],[LOGODANGELDI],[ISLEMDETAY],[SDEPART],[ONAY],[MUHFISID],[DURUMU],[SUBEID],[EK1],[EK2],[USERID],[DURUM],[MUHFC] FROM DEPOFIS WHERE 1=1 AND '" + string.Format("{0:MM/dd/yyyy}", islema_batarih.EditValue) + "'<=TARIH AND '" + string.Format("{0:MM/dd/yyyy}", islema_bitarih.EditValue) + "'>=TARIH", DBCONNECTION.Sql_Connection.DB_CONNECTB());
SqlCommand cmd_isl = new SqlCommand("SELECT [DEPOFISISLID],(DEPOFISID+20000)*-1 AS DEPOFISID,[STOKID],[MIKTAR],[FBIRIM],[FMIKTAR],[BFIYAT],[SFIYAT],[YETKILI],[ACIKLAMA],[MARKAID],[ISLREFID],[FBFIYAT],[URETSEVIYE],[SATINALMAISLID],[BARKOD],[SKTARIHI],[RGDEPOID],[RCDEPOID],[SARFDEPOID] FROM DEPOFISISL WHERE 1=1 AND DEPOFISID IN(SELECT DEPOFISID FROM DEPOFIS WHERE 1=1 AND '" + string.Format("{0:MM/dd/yyyy}", islema_batarih.EditValue) + "'<=TARIH AND '" + string.Format("{0:MM/dd/yyyy}", islema_bitarih.EditValue) + "'>=TARIH)", DBCONNECTION.Sql_Connection.DB_CONNECTB());
//Transaction Kontrol Islemini Baslat
cmd.Transaction = trans;
cmd_isl.Transaction = trans_isl;
trans = DBCONNECTION.Sql_Connection.DB_CONNECTB().BeginTransaction();
trans_isl = DBCONNECTION.Sql_Connection.DB_CONNECTB().BeginTransaction();
SqlDataReader reader = cmd.ExecuteReader(); >>>>>>>>>>ERROR LINE
SqlBulkCopy copydata = new SqlBulkCopy(DBCONNECTION.Sql_Connection.DB_CONNECTM());
SqlDataReader reader_isl = cmd_isl.ExecuteReader();
SqlBulkCopy copydata_isl = new SqlBulkCopy(DBCONNECTION.Sql_Connection.DB_CONNECTM());
copydata.DestinationTableName = "DEPOFIS";
copydata.NotifyAfter = 500;
copydata.WriteToServer(reader);
copydata_isl.DestinationTableName = "DEPOFISISL";
copydata.NotifyAfter = 500;
copydata_isl.WriteToServer(reader_isl);
//Transaction Kontrol Noktasi Olustur
trans.Save("Start");
trans_isl.Save("Start");
copydata.Close();
copydata_isl.Close();
Above code part is under a button click event.It works correctly.But When I changed the date parameter and click second time on button I get this error "The transaction is either not associated with the current connection or has been completed." Error line shown >>>>>>>> above.What should I do? Thanks for your helps...
Loading
Mahesh ChandPosted Sep 7, 2011, 10:16 AM
Posted Sep 7, 2011, 9:20 AM
Prasant JinagaPosted Sep 7, 2011, 8:03 AM
If you want to transfer the Data from one server to another, the best approach will be to use a simple SSIS Package which is available in Bussiness Intelligence Development Studio of VS.
Steps:
1 - Create two connection managers for two different servers and databases as well.
2 - Take Sql Source task(Check in the tookbox according to your requirement)
3 - Set the Connection Manager for the Destination in above task.
4 - Take one more Sql Destination Task
5 - Set the Connection manager for the Destination.
6 - Run the Package.
Thanks,
Prasant