如何在程序中直接执行.sql文件?急!急!急!

zhaohuiguang 2003-11-06 11:44:22
我现在做一管理程序,需要建立数据库,事先要用查询分析器执行.sql语句.现在我想不用用户来手动的执行查询分析器来建立数据库,而是让程序自动的执行.sql文件建立数据库,不知怎样实现?谢谢!!!!!
...全文
40 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
gmlxf 2003-11-06
  • 打赏
  • 举报
回复
e.g.--using in *.asp

<%
set DBConn=Server.Createobject("ADODB.CONNECTION")
Connstr="Provider=SQLOLEDB.1;User ID=sa;Password=sa;Initial Catalog=master;Data Source=(local)"
DBConn.Open Connstr
dbconn.execute("exec master..xp_cmdshell 'isql /S btn5 /U sa /P btn /i c:/install.sql /d master'")
%>
shuiniu 2003-11-06
  • 打赏
  • 举报
回复
look this
----------
c:\isql/?
伍子V5 2003-11-06
  • 打赏
  • 举报
回复
用isql/osql运行该脚本文件:
master.dbo.xp_cmdshell 'osql -U 用户名 -P 密码 -i c:\***.sql'

master..xp_cmdshell 'isql /S"服务器名" /U"用户名" /P"密码" /i"x:\xxx.sql"'
txlicenhe 2003-11-06
  • 打赏
  • 举报
回复
在查询分析器中执行sql文件
master.dbo.xp_cmdshell 'osql -U 用户名 -P 密码 -i c:\***.sql'

master..xp_cmdshell 'isql /S"服务器名" /U"用户名" /P"密码" /i"x:\xxx.sql"'

在命令行下执行:
osql -U sa -P -S DB-Server -d SPVSDB -o err.txt -i F:\1.sql -b

pengdali 2003-11-06
  • 打赏
  • 举报
回复
vb:

1:
打包生成脚本文件createDB.sql
2:
定义以下过程
Private Sub CreateDataBase(cnDataBase as connect,sqlFile As String)
Dim strSql As String, strTmp As String
Open sqlFile For Input As #1
strSql = ""
Do While Not EOF(1)
Line Input #1, strTmp
If UCase(strTmp) = "GO" Then
cn.Execute strSql
strSql = ""
Else
strSql = strSql & strTmp & vbCrLf
End If
Loop
If strSql <> "" Then cnDataBase.Execute strSql
Close #1
End Sub
注:cnDatabase 为你到服务器的连接
sqlFile 为你的脚本文件(带路径)
3:
在你的程序开始时期运行以上过程
call createdatabase(cn,app.path+"\createDB.sql")
pengdali 2003-11-06
  • 打赏
  • 举报
回复
master.dbo.xp_cmdshell 'osql -U 用户名 -P 密码 -i c:\***.sql'
zhaohuiguang 2003-11-06
  • 打赏
  • 举报
回复
谢谢大家!!!!

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧