Sql server2000中,什么存储过程来调用执行外部的sql文件?(50分)

  • 主题发起人 主题发起人 szfy
  • 开始时间 开始时间
S

szfy

Unregistered / Unconfirmed
GUEST, unregistred user!
在Sql server2000中,用什么存储过程,来执行外部的sql文件?
比如:将数据库结构导成sql文件,在存储过程中调用执行?
 
xp_cmdshell 'osql -Usa -P57088sql -Sdell2600 -i c:/rhl.sql -q'
-U用户名
-P密码
-S服务器
-i Sql命令文件
 
master.dbo.xp_cmdshell 'osql -U sa -P wood -S woodsvr -i E:/数据库存储过程更新文件060912.txt -q'
为什么上面执行,没有更新存储过程结果,而在查询分析器中执行 E:/数据库存储过程更新文件060912.txt 是正确的。
 
GOOD,UP学习中。。
 
更新数据库表结构和存储过程是为了维护而用,以索引osql查询帮助:
osql
[-?] |
[-L] |
[
{
{-U login_id [-P password]}
| -E
}
[-S server_name[/instance_name]] [-H wksta_name] [-d db_name]
[-l time_out] [-t time_out] [-h headers]
[-s col_separator] [-w column_width] [-a packet_size]
[-e] [-I] [-D data_source_name]
[-c cmd_end] [-q "query"] [-Q "query"]
[-n] [-m error_level] [-r {0 | 1}]
[-i input_file] [-o output_file] [-p]
[-b] [-u] [-R] [-O]
]
可怎么执行,都不成功,是不是master.dbo.xp_cmdshell只能用于查询语句,
不能用于更新语句
 
master.dbo.xp_cmdshell ' osql -U sa -P wood -S jackzhu -d ss_wood -i C:/temp.txt '
上面的代码通过了,主要上以前少了 -d 这个数据库参数引起的。
 
d:/1.txt
内容:select * from table1
----------------------
master.dbo.xp_cmdshell ' osql -U sa -P 123456 -S compu -d qzdl -i d:/1.txt '
----------
得出的结果为什么不是一个数据集呢?乱七八糟的。有人试过吗?
 
走过,路过,不要错过。UP
 
我再加100分,追问。有人知道吗?
 
一个文件里是更新数据库表结构和procedure,一个文件是select检索语句,当然不同。
 
??
有没有办法完成?
 
后退
顶部