dim Rs as new adodb.recordeset dim mysql as string dim con as new adodb.connnection con.connectionstring="..." con.open mysql="..." Rs.open mysql,con,adopendynamic,adlockoptimistic
Public Function ExecuteSQL(sql As String) As ADODB.Recordset Dim cn As ADODB.Connection Dim rst As ADODB.Recordset Dim msg As String On Error GoTo executesql_error Set cn = New ADODB.Connection 'cn.Open "Provider=MSDASQL.1;Persist Security Info=False;Data Source=CY" 'cn.Open "Provider=SQLOLEDB;Driver={SQL Server};Server=LPY;Uid=sa;Pwd=;database=CY" '通用行连接也可以适应WIN98 cn.Open "Driver={SQL Server};Server=LPY;Uid=sa;Pwd=;database=CY" Set rst = New ADODB.Recordset rst.Open Trim$(sql), cn, adOpenKeyset, adLockOptimistic Set ExecuteSQL = rst executesql_exit: Set rst = Nothing Set cn = Nothing Exit Function executesql_error: msg = "错误原因:" & Err.Description Resume executesql_exit End FunctionPrivate Sub cmd_true_Click() If Trim(txt_name.Text) = "" Then MsgBox "请输入用户名~!~", vbOKOnly + vbExclamation, "注意" txt_name.SetFocus Exit Sub Else If Len(Trim(txt_name.Text)) > 10 Then MsgBox "对不起,密码有效位仅为10位,请想好在输入,谢谢合作~!~", vbOKOnly + vbExclamation, "注意" txt_name.SetFocus txt_name.Text = "" Exit Sub End If sql = "select*from Cuser" Set rs = ExecuteSQL(sql) While rs.EOF = False If Trim(rs.Fields(0)) = Trim(txt_name.Text) Then MsgBox "此用户已存在,请重新命名~!~", vbOKOnly + vbExclamation, "注意" txt_name.SetFocus txt_name.Text = "" txt_pw.Text = "" txt_conpw.Text = "" Exit Sub Else rs.MoveNext End If Wend End If If Trim(txt_pw.Text) <> Trim(txt_conpw.Text) Then MsgBox "对不起,您两次输入的密码不一样,请重新输入~!~", vbOKOnly + vbExclamation, "注意" txt_pw.SetFocus txt_pw.Text = "" txt_conpw.Text = "" Else If Trim(txt_pw.Text) = "" Then MsgBox "对不起,密码不能为空~!~", vbOKOnly + vbExclamation, "注意" txt_pw.SetFocus Else If Len(txt_pw.Text) > 10 Then MsgBox "对不起,密码有效位仅为10位,请想好在输入,谢谢合作~!~", vbOKOnly + vbExclamation, "注意" txt_pw.SetFocus txt_pw.Text = "" txt_conpw.Text = "" Exit Sub Else rs.AddNew rs.Fields(0) = Trim(txt_name.Text) rs.Fields(1) = Trim(txt_pw.Text) If Check1.Value = 1 Then rs.Fields(2).Value = "1" Else rs.Fields(2).Value = "0" End If rs.Update txt_name.Text = "" txt_pw.Text = "" txt_conpw.Text = "" rs.Close txt_name.SetFocus frm_umanagement.Adodc1.Refresh Set frm_umanagement.DataList1.DataSource = frm_umanagement.Adodc1 frm_umanagement.DataList1.DataField = "id" Set frm_umanagement.DataList1.RowSource = frm_umanagement.Adodc1 frm_umanagement.DataList1.ListField = "id" frm_umanagement.DataList1.Refresh 'frm_umanagement.cmd_delete.Enabled = False End If End If End If Check1.Value = 0 End Sub ADO 的例子
dim mysql as string
dim con as new adodb.connnection
con.connectionstring="..."
con.open
mysql="..."
Rs.open mysql,con,adopendynamic,adlockoptimistic
Dim cn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim msg As String
On Error GoTo executesql_error
Set cn = New ADODB.Connection
'cn.Open "Provider=MSDASQL.1;Persist Security Info=False;Data Source=CY"
'cn.Open "Provider=SQLOLEDB;Driver={SQL Server};Server=LPY;Uid=sa;Pwd=;database=CY" '通用行连接也可以适应WIN98
cn.Open "Driver={SQL Server};Server=LPY;Uid=sa;Pwd=;database=CY"
Set rst = New ADODB.Recordset
rst.Open Trim$(sql), cn, adOpenKeyset, adLockOptimistic
Set ExecuteSQL = rst
executesql_exit:
Set rst = Nothing
Set cn = Nothing
Exit Function
executesql_error:
msg = "错误原因:" & Err.Description
Resume executesql_exit
End FunctionPrivate Sub cmd_true_Click()
If Trim(txt_name.Text) = "" Then
MsgBox "请输入用户名~!~", vbOKOnly + vbExclamation, "注意"
txt_name.SetFocus
Exit Sub
Else
If Len(Trim(txt_name.Text)) > 10 Then
MsgBox "对不起,密码有效位仅为10位,请想好在输入,谢谢合作~!~", vbOKOnly + vbExclamation, "注意"
txt_name.SetFocus
txt_name.Text = ""
Exit Sub
End If
sql = "select*from Cuser"
Set rs = ExecuteSQL(sql)
While rs.EOF = False
If Trim(rs.Fields(0)) = Trim(txt_name.Text) Then
MsgBox "此用户已存在,请重新命名~!~", vbOKOnly + vbExclamation, "注意"
txt_name.SetFocus
txt_name.Text = ""
txt_pw.Text = ""
txt_conpw.Text = ""
Exit Sub
Else
rs.MoveNext
End If
Wend
End If
If Trim(txt_pw.Text) <> Trim(txt_conpw.Text) Then
MsgBox "对不起,您两次输入的密码不一样,请重新输入~!~", vbOKOnly + vbExclamation, "注意"
txt_pw.SetFocus
txt_pw.Text = ""
txt_conpw.Text = ""
Else
If Trim(txt_pw.Text) = "" Then
MsgBox "对不起,密码不能为空~!~", vbOKOnly + vbExclamation, "注意"
txt_pw.SetFocus
Else
If Len(txt_pw.Text) > 10 Then
MsgBox "对不起,密码有效位仅为10位,请想好在输入,谢谢合作~!~", vbOKOnly + vbExclamation, "注意"
txt_pw.SetFocus
txt_pw.Text = ""
txt_conpw.Text = ""
Exit Sub
Else
rs.AddNew
rs.Fields(0) = Trim(txt_name.Text)
rs.Fields(1) = Trim(txt_pw.Text)
If Check1.Value = 1 Then
rs.Fields(2).Value = "1"
Else
rs.Fields(2).Value = "0"
End If
rs.Update
txt_name.Text = ""
txt_pw.Text = ""
txt_conpw.Text = ""
rs.Close
txt_name.SetFocus
frm_umanagement.Adodc1.Refresh
Set frm_umanagement.DataList1.DataSource = frm_umanagement.Adodc1
frm_umanagement.DataList1.DataField = "id"
Set frm_umanagement.DataList1.RowSource = frm_umanagement.Adodc1
frm_umanagement.DataList1.ListField = "id"
frm_umanagement.DataList1.Refresh
'frm_umanagement.cmd_delete.Enabled = False
End If
End If
End If
Check1.Value = 0
End Sub
ADO 的例子
rs.open "select * from table" cn.