當前位置:首頁 » 操作系統 » datatable更新到資料庫

datatable更新到資料庫

發布時間: 2023-07-10 17:26:20

Ⅰ 如何把DataTable快速寫入資料庫

JDBC操作資料庫其實只要掌握了六大步驟就基本差不多啦:

1.載入驅動

Class.forName(String);

String(驅動器的名稱,分oracle,sql server等資料庫驅動)

2.創建連接

DriverManager.getConnection(url,userName,passwd);

url是資料庫的地址,後面分別是用戶名和密碼

3.創建會話statement(三種statement)

stmt(Statement):所有stmt的父類從connection對象獲得,主要用於解析執行sql語句,返回響應結果,多執行異構的sql語句
pstmt(preparedStatement):主要用於執行同構的sql語句,stmt的子類。
cstmt:主要用於執行plsql的編程對象

4.執行sql語句

executeQuery();

5.處理結果集(有結果集返回,無則可省去,比如插入和刪除)

ResultSet rs = 步驟4的結果

6.釋放資源即連接,一般些在finally語句塊中,目的是減輕伺服器的壓力

Ⅱ C#如何把DataTable更新到Access資料庫

publicstaticvoidUpdateAccess(DataTabletemp)
{
OleDbConnectioncon=newOleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Datasource=Data.MDB;PersistSecurityInfo=False;JetOLEDB:DatabasePassword=");
try
{
con.Open();
OleDbDataAdapterBada=newOleDbDataAdapter("SELECT*FROMTotalDatawhere1=2",con);//建立一個DataAdapter對象
OleDbCommandBuildercb=newOleDbCommandBuilder(Bada);//這里的CommandBuilder對象一定不要忘了,一般就是寫在DataAdapter定義的後面
cb.QuotePrefix="[";
cb.QuoteSuffix="]";
DataSetds=newDataSet();//建立DataSet對象
Bada.Fill(ds,"demo");//填充DataSet
foreach(DataRowtempRowintemp.Rows)
{
DataRowdr=ds.Tables["demo"].NewRow();
dr.ItemArray=tempRow.ItemArray;//行復制
ds.Tables["demo"].Rows.Add(dr);
}
Bada.Update(ds,"demo");//用DataAdapter的Update()方法進行資料庫的更新
}
catch(Exceptionex)
{
Console.WriteLine(ex.ToString());
}
finally
{
con.Close();
}
}

Ⅲ C# datatable 更新資料庫問題

你沒有條件 當然是插入 一條新的記錄,而不是在原紀錄上更新了。

Ⅳ .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]);

熱點內容
編程貓被盜 發布:2025-03-17 12:02:18 瀏覽:130
海關鎖密碼箱如何設置新密碼 發布:2025-03-17 11:53:50 瀏覽:559
農業卡號的密碼在哪裡改 發布:2025-03-17 11:48:57 瀏覽:965
楊瀾超級訪問 發布:2025-03-17 11:47:17 瀏覽:237
資料庫無損連接 發布:2025-03-17 11:47:16 瀏覽:13
memcachephp類 發布:2025-03-17 11:40:04 瀏覽:829
哈夫曼編碼演算法實現 發布:2025-03-17 11:23:31 瀏覽:385
錄音機可以存儲信息嗎 發布:2025-03-17 11:13:32 瀏覽:174
郵件伺服器php 發布:2025-03-17 11:09:42 瀏覽:479
心跳包源碼 發布:2025-03-17 11:03:29 瀏覽:799