服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

在sql server中通过.net远程的执行sql文件

【赛迪网-it技术报道】在项目开发过程中,操作数据库的过程中经常会遇到对表结构、存储过程等进行修改,这时一般的操作都是通过直接在sql server中的企业管理器进行操作,或者查询分析器里来执行相关的语句,而我们在实际应用中为了安全,一般能尽可能少的接触数据库服务器,如果对数据库方面如果有着良好的编程风格的时候,我们一般对会对所更改的生成一个sql文件,而通过.net程序来进行数据表及存储过程的更新就会有更方便的操作性了。

首先我们需要把sql文件传到对应的web目录中,最好是把这个文件拷贝到一个远程用户不易访问的受保护的地方。

微软的sql server产品组已经编写好了这个操作页面,通过访问http://www.codeplex.com/sqlhost/wiki/view.aspx?title=uploadandexecute这个页面,就可以看到runsql.aspx这个链接,点击它就可以下载了一个名为filedownload.aspx的页面,在代码中我们可以看到已经定义的两个参数,代码如下:

// url of the t-sql file you want to run 
  string fileurl = @"http://<>/<>.sql"; 
  // connection string to the server you want to execute against 
  string connectionstring = @"<>";

fileurl代表上传sql文件的存放路径地址和名称,connectionstring代表数据库连接字符串,然后需要把filedownload.aspx上传到服务器的web目录下,需要直接能通过域名访问到。

然后通过浏览器访问远程的filedownload.aspx网页,这时候远程服务器上的页面会分析 .sql 文件,并且执行其中的所有sql语句。 执行成功后,会提示“t-sql file executed successfully”,否则会提示具体的错误信息。

为了安全,运行完sql 脚本文件后,把filedownload.aspx网页和sql 文件从远程服务器上删除。

如果我们需要保留这个功能,而且在维护的时候可能会经常操作一些sql语句组,这时候,我们可以对filedownload.aspx改造一下,这时候可以做以下几个改进:

1) 增加权限部分功能,禁止非法用户访问此页面,如只允许后台管理员进行操作;

2) 可以通过后台传本地的sql文件,上传到服务器指定目录,然后此页面通过动态读取此文件;

3) 对数据库连接字符串也采用读取web.config形式,便于数据库的统一管理。

感兴趣的读者可以按此进行进一步的扩充。这样就通过.net建成了一个非常灵活的数据库操作页面了,这样我们在每一次对产品进行升级或者打补丁时候,对数据库方面的操作,我们就可以建立一个整个的sql文件进行维护了。

扫描关注微信公众号