当前位置:首页 » 操作系统 » 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]);

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:705
制作脚本网站 发布:2025-10-20 08:17:34 浏览:969
python中的init方法 发布:2025-10-20 08:17:33 浏览:677
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:830
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:737
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1076
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:309
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:189
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:875
python股票数据获取 发布:2025-10-20 07:39:44 浏览:830