1
Public Rep As String
Private Sub CheckBox1_Change()
'确定是否使用默认登录
If Me.CheckBox1.Value = True Then
Me.TextBox1.Enabled =True
Me.TextBox4.Enabled =True
Else
Me.TextBox1.Enabled =False
Me.TextBox4.Enabled =False
End If
End Sub
Private Sub CommandButton18_Click()
'这段代码用于搜索指定数据库服务器中的数据库
'设置出错跳转
On Error GoTo err
'声明相关变量
Dim databasename As String '保存数据名称
Dim cn As ADODB.Connection 'ADO连接
Dim strCnn As String '保存连接字符串
Set cn = New ADODB.Connection '初始连接
Dim rct As ADODB.Recordset '记录集
'根据是否指定登录ID,构建连接字符串
If CheckBox1.Value = flase Then
strCnn = "Driver={SQL Server};Server=" & ComboBox4.Value &";Trusted_Connection=yes;DataBase=" & ComboBox2.Value
Else
strCnn = "Driver={SQL Server};Server=" & ComboBox4.Value &";UID=" & TextBox1.Value & ";PWD=" & TextBox4.Value& ";DataBase=" & ComboBox2.Value
End If
'打开连接
cn.Open strCnn
'判断数据库服务器连接是否成功
If cn.State = adStateOpenThen
MsgBox"Excel正在列举SQLServer服务器:" & ComboBox4.Value & "上的数据库!",vbInformation, "连接成功"
'连接成功后,将连接信息保存到当前工作薄中,以便下次调用
[U8SERVER] =Me.ComboBox4.Value
[U8ID] =Me.TextBox1.Value
[U8PW] =Me.TextBox4.Value
'返回所有数据库名称
Set rct = cn.Execute("sp_helpdb")
'Set rct = cn.Execute("SELECTname,create_date,state FROM sys.databases ORDER BY 1DESC")
If rct.EOF =True And rct.BOF = True Then
MsgBox"Excel未能正确返回查询结果,请检查SQL语句是否正确!", vbExclamation, "操作失败"
ExitSub
Else
Dim r AsInteger
ComboBox2.Clear
While Notrct.EOF
ComboBox2.AddItemrct.Fields(0).Value
'ComboBox2.AddItem rct.Fields("name").Value
r = r +1
rct.MoveNext
Wend
EndIf
MsgBox"请选择相应的数据库!", vbInformation, "连接成功!"
ComboBox2.SetFocus
Else
MsgBox"数据库服务器连接失败!", vbInformation, "连接服务器"
End If
Exit Sub
err:
MsgBox "无法在指定的SqlServer服务器查找到数据库,请检查服务器的地址或名称是否正确!", vbExclamation, "提示信息"
Me.ComboBox4.SetFocus
End Sub
Private Sub CommandButton19_Click()
'这段代码用于导入指定的U8数据库到当前的模板中
'关闭屏幕更新
Application.ScreenUpdating = False
'首先判断是否选择了想要导入的数据库
If ComboBox2.Value = "" Then
MsgBox "请选择数据库文件",vbExclamation, "提示"
Exit Sub
End If
'设置出错跳转信息
On Error GoTo err
'声明所需变量
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim strCnn As String
Set cn = New ADODB.Connection
Dim n As Integer 'n用于保存凭证表编号
Dim stname AsString '用于保存新增凭证表的名称
n = 1
'根据是否指定登录ID,构建连接字符串
If CheckBox1.Value = flase Then
strCnn = "Driver={SQLServer};Server=" & ComboBox4.Value &";Trusted_Connection=yes;DataBase=" & ComboBox2.Value &""
Else
strCnn = "Driver={SQLServer};Server=" & ComboBox4.Value & ";UID=" &TextBox1.Value & ";PWD=" & TextBox4.Value &";DataBase=" & ComboBox2.Value & ""
End If
'打开数据库连接
cn.Open strCnn
'判断数据库服务器连接是否成功
If cn.State = adStateOpenThen
'在状态栏显示当前进度