mysql执行sql脚本文件_OSQL直接执行数据库SQL server 脚本文件

OSQL直接执行数据库SQL server 脚本文件

程序中直接执行SQL 脚本文件,通常是在进程中调用数据库命令行工具osql.exe,现在将调用方式和一些问题解决方案记录下来。

7e2ba0b3359ee3b7f215c50f43e43ba9.png

sqlserver外部命令工具,说白了就是微软作的一个exe程序可以连本机服务器或者其他服务器。我们在程序调用时只要找到执行所需的exe即可:

找到装有sql server 的路径

C:Program FilesMicrosoft SQL Server140ToolsBinn

找到两个文件osql.exe 、osql.rll 复制到程序文件夹下

代码中调用:

5c67582212695c4c357400821215d844.png

问题1

在调用过程中,执行文件路径,FileName引用绝对路径,此处产生问题1:

如果程序在数据服务器或者安装有可以连接SQL server 数据库工具的主机上对路径没有要求,因为osql 用到驱动 odbc sql server driver,安装数据库管理工具回安装此驱动。

9855a4a7d627b3eda685a77976f006d9.png

但如果没有该驱动,则需要手动安装。绝对路径是保证能找到执行文件osql.exe。

我们正式环境下数据库和应用是分离的并不在一台服务器上,所以很多人在程序掉用中本地调试或者开发环境中很好用,陌生环境下无法使用而程序也无法捕获错误消息,通常是这个原因造成的。

问题2

我们在程序打包时会把osql 和写好的数据库脚本放到程序相对目录下,安装时默认路径通常在

C:Program Files你的程序 这样的路径

但是如果脚本文件在前缀为C:Program Files 这样的路径是无法读取的

这时的处理办法是给文件路径添加引号

d3b82fd66d653d47deec6c1ba9245bdc.png
72956b1044adb0ff00d9c96ed1714d42.png

通常使用osql 工具执行脚本文件速度很快,而且多人维护数据库脚本文件时只要更新文件就可以了,不需要做代码的更改。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值