Foxtable(狐表)用户栏目专家坐堂 → 连续执行多条SQL代码如何设置?


  共有1925人关注过本帖树形打印复制链接

主题:连续执行多条SQL代码如何设置?

帅哥哟,离线,有人找我吗?
gudao123456
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:855 积分:6402 威望:0 精华:0 注册:2017/11/21 21:31:00
连续执行多条SQL代码如何设置?  发帖心情 Post By:2019/10/19 7:54:00 [只看该作者]

想连续执行多条SQL代码,如执行完:
UPDATE {xszxztb} S ET yhkh={学生信息导入样表}.银 行卡号 from {学生信息导入样表} WHERE {xszxztb}.sfzhm={学生信息导入样表}.身份证号码
后还想执行:
UPDATE {学生信息导入样表}} S ET  是否替换成功=1  from {xszxztb} WHERE {xszxztb}.sfzhm={学生信息导入样表}.身份证号码
可以在
 Dim cmd As new SQLCommand
    cmd.C
    cmd.CommandText =“UPDATE {xszxztb} S ET yhkh={学生信息导入样表}.银 行卡号 from {学生信息导入样表} WHERE {xszxztb}.sfzhm={学生信息导入样表}.身份证号码
    cmd.ExecuteNonQuery
中连续执行还是要重新打开一个SQLCommand窗口? 该如何设? 谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106023 积分:539208 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/10/19 8:51:00 [只看该作者]

如果是SqlServer,可以把sql拼到一起,以分号隔开

cmd.CommandText =“UPDATE {xszxztb} S ET yhkh={学生信息导入样表}.银 行卡号 from {学生信息导入样表} WHERE {xszxztb}.sfzhm={学生信息导入样表}.身份证号码;UPDATE {学生信息导入样表}} S ET  是否替换成功=1  from {xszxztb} WHERE {xszxztb}.sfzhm={学生信息导入样表}.身份证号码

或者执行多次,不需要重新new SQLCommand

Dim cmd As new SQLCommand
    cmd.C
    cmd.CommandText =“UPDATE {xszxztb} S ET yhkh={学生信息导入样表}.银 行卡号 from {学生信息导入样表} WHERE {xszxztb}.sfzhm={学生信息导入样表}.身份证号码
    cmd.ExecuteNonQuery
    cmd.CommandText =“UPDATE {学生信息导入样表}} S ET  是否替换成功=1  from {xszxztb} WHERE {xszxztb}.sfzhm={学生信息导入样表}.身份证号码
    cmd.ExecuteNonQuery

 回到顶部
帅哥哟,离线,有人找我吗?
gudao123456
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:855 积分:6402 威望:0 精华:0 注册:2017/11/21 21:31:00
  发帖心情 Post By:2019/10/19 18:49:00 [只看该作者]

好,非常谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
xndd
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:517 积分:4319 威望:0 精华:0 注册:2014/11/26 15:23:00
  发帖心情 Post By:2019/10/19 22:17:00 [只看该作者]

建议通过事务执行:
BEGIN TRANSACTION
sql
END TRANSACTION

 回到顶部
帅哥哟,离线,有人找我吗?
gudao123456
  5楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:855 积分:6402 威望:0 精华:0 注册:2017/11/21 21:31:00
  发帖心情 Post By:2019/10/20 17:56:00 [只看该作者]

谢谢!通过事务执行的好处是什么呢?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106023 积分:539208 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/10/20 20:59:00 [只看该作者]

执行多次的时候才需要。只要其中一次执行失败,那么同一个事物里之前所有的update操作都会撤销。如果想其中一个失败不影响其他的sql操作,就不需要使用事务了。

 回到顶部