[共享]如何实现执行一段.sq;文件,并可以创建用户
我利用这个过程赚了很多可用分,现在共享出来
'还有创建数据库和创建用户等操作,我都给打得注视.注意数据库也可以同过.sql文件创建
'首先要引用sql mo 对象
'ExexSC(服务器名,用户名,密码,脚本路径)
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Public Sub ExexSC(TxtServerName As String, TxtLoginName As String, _
TxtLoginPWD As String, yourFileName As String)
'首先引用SQL DMO OBJECTLIBRARY
Dim GOBJServer As SQLDMO.SQLServer
Set GOBJServer = New SQLDMO.SQLServer
GOBJServer.LoginTimeout = 10
GOBJServer.Connect TxtServerName, TxtLoginName, TxtLoginPWD
'登录数据库服务器
'''''''''''''''''''''
'Dim LOBJDatabase As New SQLDMO.Database
' LOBJDatabase.Name = LStrDBName
'
' '建立数据库数据文件
' Dim LObjDBF As New SQLDMO.DBFile
' LObjDBF.Name = LStrDBName '名称
' LObjDBF.PhysicalName = GOBJServer.Registry.SQLDataRoot & "\DATA\" & LStrDBName & ".dbf" '文件名称
' LObjDBF.Size = 10 '初始大小10M
' LObjDBF.FileGrowthType = SQLDMOGrowth_Percent '增长方式为按比例
' LObjDBF.FileGrowth = 5 '增长5%
' LOBJDatabase.FileGroups("PRIMARY").DBFiles.Add LObjDBF '将数据库文件绑定到数据库
'
' '建立日志文件
' Dim lOBJLogF As New SQLDMO.LogFile
' lOBJLogF.Name = LStrDBName & "_Log.ldf"
' lOBJLogF.PhysicalName = GOBJServer.Registry.SQLDataRoot & "\DATA\" & LStrDBName & "_log.ldf" '文件名称
' lOBJLogF.Size = 5 '初始大小5M
' LOBJDatabase.TransactionLog.LogFiles.Add lOBJLogF '将日志文件增加到数据库
'
' '将数据库添加到服务器
' GOBJServer.Databases.Add LOBJDatabase
''建立新的数据库
'''''''''''''''''''''''''''''''
'Dim lObjLogin As New SQLDMO.Login '登录用户对象
'Dim lObjUser As New SQLDMO.User '数据库用户对象
'
'lObjLogin.Name = Trim(TxtUserName.Text) '指定用户登录名
'lObjLogin.Database = CboDatabases.Text '默认登录数据库
'lObjLogin.DenyNTLogin = False '非NT系统登录
'GOBJServer.Logins.Add lObjLogin '添加登录用户
'lObjLogin.SetPassword "", Trim(TxtPWD.Text) '指定密码
'GOBJServer.ServerRoles(1).AddMember Trim(TxtUserName.Text) '指定用户为超级用户
'lObjUser.Name = lObjLogin.Name '指定用户名
'lObjUser.Login = lObjLogin.Name '
'GOBJServer.Databases(CboDatabases.Text).Users.Add lObjUser '为系统数据库添加该新用户
''为新数据库建立用户
'''''''''''''''''''''''''''''''''''
Dim fillname As Integer '文件句柄
Dim lStrLine As String
fillname = FreeFile
Dim UstrSQlScript As String '记录数据库脚本
Open yourFileName For Input As #fillname
Do While Not EOF(fillname)
Line Input #fillname, lStrLine
UstrSQlScript = UstrSQlScript + lStrLine + (Chr(13) + Chr(10))
Loop
Close #fillname
'读出脚本文件到变量
''''''''''''''
'执行脚本建立数据库
GOBJServer.Databases("pubs").ExecuteImmediate UstrSQlScript, SQLDMOExec_Default
MsgBox "执行成功"
GOBJServer.Close
Set GOBJServer = Nothing
End Sub
'还有创建数据库和创建用户等操作,我都给打得注视.注意数据库也可以同过.sql文件创建
'首先要引用sql mo 对象
'ExexSC(服务器名,用户名,密码,脚本路径)
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Public Sub ExexSC(TxtServerName As String, TxtLoginName As String, _
TxtLoginPWD As String, yourFileName As String)
'首先引用SQL DMO OBJECTLIBRARY
Dim GOBJServer As SQLDMO.SQLServer
Set GOBJServer = New SQLDMO.SQLServer
GOBJServer.LoginTimeout = 10
GOBJServer.Connect TxtServerName, TxtLoginName, TxtLoginPWD
'登录数据库服务器
'''''''''''''''''''''
'Dim LOBJDatabase As New SQLDMO.Database
' LOBJDatabase.Name = LStrDBName
'
' '建立数据库数据文件
' Dim LObjDBF As New SQLDMO.DBFile
' LObjDBF.Name = LStrDBName '名称
' LObjDBF.PhysicalName = GOBJServer.Registry.SQLDataRoot & "\DATA\" & LStrDBName & ".dbf" '文件名称
' LObjDBF.Size = 10 '初始大小10M
' LObjDBF.FileGrowthType = SQLDMOGrowth_Percent '增长方式为按比例
' LObjDBF.FileGrowth = 5 '增长5%
' LOBJDatabase.FileGroups("PRIMARY").DBFiles.Add LObjDBF '将数据库文件绑定到数据库
'
' '建立日志文件
' Dim lOBJLogF As New SQLDMO.LogFile
' lOBJLogF.Name = LStrDBName & "_Log.ldf"
' lOBJLogF.PhysicalName = GOBJServer.Registry.SQLDataRoot & "\DATA\" & LStrDBName & "_log.ldf" '文件名称
' lOBJLogF.Size = 5 '初始大小5M
' LOBJDatabase.TransactionLog.LogFiles.Add lOBJLogF '将日志文件增加到数据库
'
' '将数据库添加到服务器
' GOBJServer.Databases.Add LOBJDatabase
''建立新的数据库
'''''''''''''''''''''''''''''''
'Dim lObjLogin As New SQLDMO.Login '登录用户对象
'Dim lObjUser As New SQLDMO.User '数据库用户对象
'
'lObjLogin.Name = Trim(TxtUserName.Text) '指定用户登录名
'lObjLogin.Database = CboDatabases.Text '默认登录数据库
'lObjLogin.DenyNTLogin = False '非NT系统登录
'GOBJServer.Logins.Add lObjLogin '添加登录用户
'lObjLogin.SetPassword "", Trim(TxtPWD.Text) '指定密码
'GOBJServer.ServerRoles(1).AddMember Trim(TxtUserName.Text) '指定用户为超级用户
'lObjUser.Name = lObjLogin.Name '指定用户名
'lObjUser.Login = lObjLogin.Name '
'GOBJServer.Databases(CboDatabases.Text).Users.Add lObjUser '为系统数据库添加该新用户
''为新数据库建立用户
'''''''''''''''''''''''''''''''''''
Dim fillname As Integer '文件句柄
Dim lStrLine As String
fillname = FreeFile
Dim UstrSQlScript As String '记录数据库脚本
Open yourFileName For Input As #fillname
Do While Not EOF(fillname)
Line Input #fillname, lStrLine
UstrSQlScript = UstrSQlScript + lStrLine + (Chr(13) + Chr(10))
Loop
Close #fillname
'读出脚本文件到变量
''''''''''''''
'执行脚本建立数据库
GOBJServer.Databases("pubs").ExecuteImmediate UstrSQlScript, SQLDMOExec_Default
MsgBox "执行成功"
GOBJServer.Close
Set GOBJServer = Nothing
End Sub
...全文
相关推荐
sap中sq01的使用方法.pdf
创建用户组并分配用户:使用 Tcode SQ03 创建新的用户组,并分配用户。2. 创建 InfoSet 并分配到用户组:使用 Tcode SQ02 创建新的 InfoSet,并将其分配到用户组。
fSQ支持库1.0版(Sq.fne)-易语言
lib"目录则可能包含动态链接库文件,这些库在运行时被程序加载,允许程序共享库资源,从而节省内存并便于更新。使用SQ支持库1.0版,开发者可以:1.
itunes账号共享+授权工具+多授权文件+多账号授权教程
该项目提供了一套在Windows系统下实现iTunes多账号授权的解决方案,包含授权文件导入导出工具及详细教程。通过修改硬盘卷序列号并配合关键配置文件(如iTunes.SQ),可在多设备间共享iOS应
sq测试与婚恋诊疗
婚恋关系维护:分享长期关系中的保鲜秘诀,如保持浪漫、共享兴趣和保持个人成长等。通过阅读这份文档,不仅可以提升个人的情感智慧,还能为恋爱和婚姻生活提供实用的指导。
SQ更新
Jupyter Notebook是一款非常流行的交互式计算环境,它允许用户创建和共享文档,支持多种编程语言,包括Python、R、SQL等。


数据库(包含打印,安装,报表)
