我有一个问题。我想将数据从datatable传输到sql。将从Web服务接收的数据传输到datatable.I我正在用循环执行此操作。我不想用循环执行此操作。我怎样做?我的代码;
DataTable gelendata = new DataTable();
private void cari_aktar()
{
SqlCeConnection dataset_baglanti = conn.baglan();
ARMINE_SHOP.WebReference.bulten terminal = new ARMINE_SHOP.WebReference.bulten();
gelendata = terminal.CARILER_MAGAZACILIK("armine_webservice", "pass***", "MikroDB_V14_ARMINE").Tables[0];
foreach (datarow row in gelendata.rows)
{
k = k + 1;
progressbar1.value = k;
if (row["cari_kod"] == dbnull.value)
{
cari_kod = "";
}
else
{
cari_kod = (string)row["cari_kod"];
}
sqlcecommand cari_ekle = new sqlcecommand("ınsert ınto carı_hesaplar (cari_kod) values (@cari_kod)", dataset_baglanti);
cari_ekle.parameters.clear();
cari_ekle.ExecuteNonQuery();
}
我尝试了代码
SqlCeDataAdapter da = new SqlCeDataAdapter();
da.InsertCommand =new SqlCeCommand("INSERT INTO CARI_HESAPLAR (cari_kod) VALUES (@cari_kod)", dataset_baglanti);
da.InsertCommand.Parameters.Add("@cari_kod", SqlDbType.NVarChar, 50, "cari_kod");
da.Update(terminal.CARILER_MAGAZACILIK("armine_webservice","pass***", "MikroDB_V14_ARMINE"));
等待你的帮助......
谢谢你......
答案 0 :(得分:0)
我不知道你是否可以在SqlCe中使用它,但在MsSqlConnection中你可以像这样使用
SqlCommandBuilder cmdb = (SqlCommandBuilder)this.CreateCommandBuilder();
cmdb.DataAdapter = (SqlDataAdapter)this.CreateDataAdapter(SQL, connection);
cmdb.RefreshSchema();
SqlDataAdapter dta = cmdb.DataAdapter;
dta.InsertCommand = cmdb.GetInsertCommand(true);
dta.UpdateCommand = cmdb.GetUpdateCommand(true);
dta.DeleteCommand = cmdb.GetDeleteCommand(true);
dta.Update(dataTable);
这是从我自己的框架中复制的,以便于理解: