datatable保存到資料庫
A. 如何將DataTable更新到資料庫中
sqlDataAdapter adapter = new SqlDataAdapter(strSql, strConn);
SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
DataSet ds = new DataSet();
adapter.Fill(ds, "Titles");
//插入記錄
DataTable table = ds.Tables["Titles"];
DataRow row = table.NewRow();
row["Title_id"] = "JP1001";
row["title"] = "programming Microsoft .NET";
row["price"] = 59.99m;
row["ytd_sales"] = 100000;
row["type"] = "business";
row["pubdate"] = new DateTime(2002, 5, 1);
table.Rows.Add(row);
//更新資料庫
adapter.Update(table);
B. 怎麼把DataTable里的值直接添加到資料庫里
foreach(datarow dr in dt.rows)
{
string dym = dr["電影名"].toString();
......//類似的讀取出 datatable裡面的行的指定列的值;
Insert(參數);
}
public void Insert(string a,string b,string c,string,d,string e)
{
SqlConnetion sqlconn = new SqlConnection(「連接字元串");
sqlconn.open();
SqlCommand sqlcmd = new SqlCommand(sqlconn,"insert into biao values (a,b,c,d,e)");
sqlcmd.ExecuteNonQuery();
sqlconn.close();
}
C. .net如何將datatable數據保存到sql資料庫
//1、使用sqlbulk.writetoserver(datatable)
SqlBulkCopysqlbulk=newSqlBulkCopy(connectionString,SqlBulkCopyOptions.UseInternalTransaction);
sqlbulk.DestinationTableName="Table_1";//資料庫中的表名
sqlbulk.WriteToServer(dataset.Tables[0]);
//2、使用sqlcommand.executenonquery()方法插入
foreach(DataRowdatarowindatatable.Rows)
{
stringsql="INSERTINTO[Table_1]
([CompanyName],[CompanyCode],[Address],[Owner],[Memo])"+
"VALUES('"+datarow["CompanyName"].ToString()+"'"+
",'"+datarow["CompanyCode"].ToString()+"'"+
",'"+datarow["Address"].ToString()+"'"+
",'"+datarow["Owner"].ToString()+"'"+
",'"+datarow["Memo"].ToString()+"')";
using(SqlConnectionsqlconn=newSqlConnection(connectionString))
{
sqlconn.Open();
SqlCommandsqlcommand=newSqlCommand(sql,sqlconn);
sqlcommand.ExecuteNonQuery();
sqlconn.Close();
}
}
使用sqldataadapter.update(dataset,tablename);
SqlCommandinsertcommand=newSqlCommand("INSERTINTO[Table_1]([CompanyName],[CompanyCode],[Address],[Owner],[Memo])"+
"VALUES(@CompanyName,@CompanyCode,@Address,@Owner,@Memo)",newSqlConnection(connectionString));
insertcommand.Parameters.Add("@CompanyName",SqlDbType.NChar,50,"CompanyName");
insertcommand.Parameters.Add("@CompanyCode",SqlDbType.NChar,25,"CompanyCode");
insertcommand.Parameters.Add("@Address",SqlDbType.NChar,255,"Address");
insertcommand.Parameters.Add("@Owner",SqlDbType.NChar,25,"Owner");
insertcommand.Parameters.Add("@Memo",SqlDbType.NChar,255,"Memo");
sqldataadapter.InsertCommand=insertcommand;
sqldataadapter.Update(dataset,"Table_1");
使用sqlbulk.writetoserver(datatable)
SqlBulkCopysqlbulk=newSqlBulkCopy(connectionString,SqlBulkCopyOptions.UseInternalTransaction);
sqlbulk.DestinationTableName="Table_1";//資料庫中的表名
sqlbulk.WriteToServer(dataset.Tables[0]);