存储过程使用shell脚本执行sql文件
2012-11-11 21:43
716 查看
今天接到的需求是把所有表的创建写到储存过程里面。
收到创建表的脚本之后就傻了,60-70个表,还包含存储过程、视图等。
那么如何解决呢。
思路就是在存储过程里面使用shell脚本执行sql脚本文件。
通过MSDN得到执行shell的函数:xp_cmdshell。
下面是完整的脚本:
收到创建表的脚本之后就傻了,60-70个表,还包含存储过程、视图等。
那么如何解决呢。
思路就是在存储过程里面使用shell脚本执行sql脚本文件。
通过MSDN得到执行shell的函数:xp_cmdshell。
下面是完整的脚本:
CREATE PROCEDURE CreatTable ( @UserName varchar(200), @PassWord varchar(200), @FilePath varchar(200), @Trusted bit ) AS BEGIN SET NOCOUNT ON; declare @shell varchar(max); EXEC sys.sp_configure 'show advanced options',1; --Open shell EXEC sys.sp_configure 'xp_cmdshell',1 if @Trusted=1 Set @shell= 'osql -E Northwind -i '+ @FilePath; else --use user name connection Set @shell= 'osql -U '+ @UserName +' -P '+ @PassWord +' -d Northwind -i '+ @FilePath; EXEC master..xp_cmdshell @shell; --Close shell EXEC sys.sp_configure 'xp_cmdshell',0 END GO
相关文章推荐
- oracle环境下在dos中使用编译sql脚本执行存储过程的方法
- 数据库操作_连接SQL Server数据库示例;连接ACCESS数据库;连接到 Oracle 数据库示例;SqlCommand 执行SQL命令示例;SqlDataReader 读取数据示例;使用DataAdapter填充数据到DataSet;使用DataTable存储数据库表;将数据库数据填充到 XML 文件;10 使用带输入参数的存储过程;11 使用带输入、输出参数的存储过程示;12 获得数据库中表的数目和名称;13 保存图片到SQL Server数据库示例;14 获得插入记录标识号;Exce
- mysql查看存储过程和执行sql脚本文件到数据库中
- shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
- 使用oracle 的 PL/Sql 定时执行一个存储过程
- 得用SQL语句生成某个库下所有存储过程脚本,并每个存为一个文件
- 使用shell脚本删除当前目录下.c文件对应的可执行文件
- easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)
- shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
- shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
- mysql必知必会,使用命令行创建数据源,执行create.sql脚本文件,用populate.sql文件填充各个新表
- 转贴自微软MSDN:建议执行动态SQL时,使用sp_executesql 存储过程而不要使用EXECUTE 语句
- 使用shell脚本往数据库批量插入数据和执行sql
- 用SQL语句生成某个库下所有存储过程脚本,并每个存为一个文件
- shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
- [PL/SQL]测试存储过程执行超长SQL(使用CLOB变量)
- 使用SQL执行带返回的存储过程
- PL/SQL块或者存储过程中不能执行DDL,可以使用动态SQL
- .NET调用osql.exe执行sql脚本创建表和存储过程
- 数据库、SQL脚本、存储过程执行准则(*****)