osql命令的问题.我想执行sql文件,大家进来看看.谢谢.
我有多个sql文件.我想写个bat文件,想批处理执行多个sql文件.
但能不能在bat中执行所有sql文件呢?
本来我这样写的,
osql -U user -P pwd -i c:\a.sql
osql -U user -P pwd -i c:\b.sql
osql -U user -P pwd -i c:\c.sql
.........
但我觉得一个文件中写那么多重复的
osql -U user -P pwd -i 很不好.能不能只写一个.
其实,我那么多sql文件是故意分开 的,这样有利于维护.大家有什么好的办法吗

解决方案 »

  1.   

    执行某个目录下的所有.sql文件? 这个bat文件的编写不会
      

  2.   

    其实我还想问一下,有什么其它办法呢?
    主要是我想执行多个sql文件中的sql命令.包含创建数据库,创建用户,创建表,修改等,很多个sql文件的.
    我不想借助于其它程序,比如vb,delphi之类的.不过,实在不行可以用查询分析器.但总不可能一个个的sql文件手工打开,并执行吧.
      

  3.   

    如果在 winxp /win2003 下. 可以试试
    forfiles /p . /s /m *.sql /c "cmd /c osql -U sa -P xxx  -S 127.0.0.1 -d MyDB -i @path && echo @file"  
    说明
    -------
    /p .     : 从当前目录找 
    /s       : 包括子目录
    /m *.sql : 匹配 .sql 文件