当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 在SQL Server中通过.NET远程的执行SQL文件

MSSQL
mssql server 存储过程里,bulk insert table from ''路径+文件'',路径固定,文件名不固定的实现方法
请问在mssql“SQL事件探查器”里表格的标题,如CPU,Read,Write,Duration,SPID.........的解释
mssql server .ldf和.mdf的文件附加数据库的sql语句
[js]javascript与剪贴板交互
mssql中得到当天数据的语句
在SQL中使用convert函数进行日期的查询的代码
sql server中datetime字段去除时间的语句
sql语句优化之用EXISTS替代IN、用NOT EXISTS替代NOT IN的语句
推荐SQL Server 重新恢复自动编号列的序号的sql代码
清空MSSQL日志 与set recovery simple
mssql2005注入方法小结
[原创]比较详细的完美解决安装sql2000时出现以前的某个程序安装已在安装计算机上创建挂起的文件操作。
sql语句中如何将datetime格式的日期转换为yy-mm-dd格式
重装MS SQL Server 2000前必须彻底删除原安装文件的方法
SQL Server 不删除信息重新恢复自动编号列的序号的方法
MSSQL差异备份取系统权限的相关软件下载
解决MSSQL2005远程连接sql2000非默认端口数据库的问题
SQL命令大全-中英文对照
用SQL语句实现随机查询数据并不显示错误数据的方法
sql server不存在 sql server拒绝访问

MSSQL 中的 在SQL Server中通过.NET远程的执行SQL文件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 57 ::
收藏到网摘: n/a

在项目开发过程中,操作数据库的过程中经常会遇到对表结构、存储过程等进行修改,这时一般的操作都是通过直接在SQL Server中的企业管理器进行操作,或者查询分析器里来执行相关的语句,而我们在实际应用中为了安全,一般能尽可能少的接触数据库服务器,如果对数据库方面如果有着良好的编程风格的时候,我们一般对会对所更改的生成一个SQL文件,而通过.NET程序来进行数据表及存储过程的更新就会有更方便的操作性了。
首先我们需要把SQL文件传到对应的WEB目录中,最好是把这个文件拷贝到一个远程用户不易访问的受保护的地方。

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

 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文件进行维护了。