導航:首頁 > 網路數據 > sql大數據寫入

sql大數據寫入

發布時間:2023-12-23 16:20:04

A. c#sqlbulk 批量寫入數據可否回滾

可以,需要使用Transaction登記,給你我以前寫的批量導入代碼,我稍微修改了一下。

publicboolAddDataTableToDB(DataTableMyTable)
{
SqlTransactiontran=null;//聲明一個事務對象
IniTable();
try
{
using(SqlConnectionconn=newSqlConnection("Server=127.0.0.1;user=sa;pwd=sa;database=test"))
{
conn.Open();//打開鏈接
using(tran=conn.BeginTransaction())
{
using(SqlBulkCopy=newSqlBulkCopy(conn,SqlBulkCopyOptions.Default,tran))
{
.DestinationTableName="TBImei";//指定伺服器上目標表的名稱
.WriteToServer(MyTable);//執行把DataTable中的數據寫入DB
tran.Commit();//提交事務
returntrue;
}
}
}
}
catch(Exceptionex)
{
tran.Rollback();//出錯回滾
MessageBox.Show(ex.Message);
returnfalse;
}
}

B. MySQL資料庫 寫入大量數據如何實現

java">//最快的方法10000記錄23MS
publicstaticvoidinsert(){
//開時時間
Longbegin=newDate().getTime();
//sql前綴
Stringprefix="INSERTINTOtb_big_data(count,create_time,random)VALUES";
try{
//保存sql後綴
StringBuffersuffix=newStringBuffer();
//設置事務為非自動提交
conn.setAutoCommit(false);
//Statementst=conn.createStatement();
//比起st,pst會更好些
PreparedStatementpst=conn.prepareStatement("");
//外層循環,總提交事務次數
for(inti=1;i<=100;i++){
//第次提交步長
for(intj=1;j<=10000;j++){
//構建sql後綴
suffix.append("("+j*i+",SYSDATE(),"+i*j
*Math.random()+"),");
}
//構建完整sql
Stringsql=prefix+suffix.substring(0,suffix.length()-1);
//添加執行sql
pst.addBatch(sql);
//執行操作
pst.executeBatch();
//提交事務
conn.commit();
//清空上一次添加的數據
suffix=newStringBuffer();
}
//頭等連接
pst.close();
conn.close();
}catch(SQLExceptione){
e.printStackTrace();
}
//結束時間
Longend=newDate().getTime();
//耗時
System.out.println("cast:"+(end-begin)/1000+"ms");
}

閱讀全文

與sql大數據寫入相關的資料

熱點內容
maya粒子表達式教程 瀏覽:84
抖音小視頻如何掛app 瀏覽:283
cad怎麼設置替補文件 瀏覽:790
win10啟動文件是空的 瀏覽:397
jk網站有哪些 瀏覽:134
學編程和3d哪個更好 瀏覽:932
win10移動硬碟文件無法打開 瀏覽:385
文件名是亂碼還刪不掉 瀏覽:643
蘋果鍵盤怎麼打開任務管理器 瀏覽:437
手機桌面文件名字大全 瀏覽:334
tplink默認無線密碼是多少 瀏覽:33
ipaddgm文件 瀏覽:99
lua語言編程用哪個平台 瀏覽:272
政采雲如何導出pdf投標文件 瀏覽:529
php獲取postjson數據 瀏覽:551
javatimetask 瀏覽:16
編程的話要什麼證件 瀏覽:94
錢脈通微信多開 瀏覽:878
中學生學編程哪個培訓機構好 瀏覽:852
榮耀路由TV設置文件共享錯誤 瀏覽:525

友情鏈接