如何用SQL语句将数据批量插入数据库

如何用SQL语句将数据批量插入数据库,第1张

这种情况使用xml来进行批量插入.

1.asp.net页面上抓取数据,转换成xml字符串

2.将这个字符串作为参数传给存储过程

3.存储过程里,将这个xml读取成临时表

4.整个临时表插入到目标数据表中,这个过程可以使用sql

server的事务;其实在这里用不用事务问题都不大了,因为存储过程出错,数据插不进去的,还会抛出异常到asp.net后台,让后台进行处理异常.

您用游标或asp.net代码来循环,速度会比较慢的.

通过事务来实现,也就是说,SqlCommand的CmdText属性在一个方法当中可以赋多个SQL语句

SqlConnection sqlConnection = new SqlConnection()

...初始化连接

// 开启事务

SqlTransaction sqlTransaction = sqlConnection.BeginTransaction()

// 将事务应用于Command

SqlCommand sqlCommand = new SqlCommand()

sqlCommand.Connection = sqlConnection

sqlCommand.Transaction = sqlTransaction

sqlCommand.CmdText=第一个sql语句

sqlCommand.ExcuteNoneQuery()

sqlCommand.CmdText=第二个sql语句

sqlCommand.ExcuteNoneQuert()

try

{

// 利用sqlcommand进行数据 *** 作

...

// 成功提交

sqlTransaction.Commit()

}

catch(Exception ex)

{

// 出错回滚

sqlTransaction.Rollback()

}

如果在执行第二次SQL语句是出错了,那么就会到Catch异常中,执行回滚,那么第一次执行的也同样回滚了,所以必须2个都一行成功才往数据库中提交

这里是用了2次SQL语句,如果你想用1个语句同时 *** 控2个表的话,就要用到存储过程或者是触发器,存储过程和触发器你如果想知道的话加QQ吧:312976625,我给你讲.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11727459.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存