简单来说,直接连接需要使用SQLConnection、SQLDataAdapter、SQLCommand、Datatable四个控件,先写好连接字符串,然后建立连接,写好SQL语句,通过DataAdapter从数据库读取数据到Datatable。这样只有在SQL服务器中附加数据库才能实现访问。还可以使用DSN实现数据库连接,控件依次更换为ODBCConnection、ODBCDataAdapter、ODBCCommand、datatable、基本步骤和上面说的一样。
SQL语句就是从数据库查用户名对应的密码,将数据从数据库读取到DataTable后,与用户输入的密码比对,相符则登陆成功,否则提示错误。
过程中的细节问题欢迎追问
Label1.Caption = "融通系统外挂程序"If Dir(App.Path &"/hjw.mdb") <>"" Then
Set mydata = OpenDatabase(App.Path &"\hjw")
Set myrs1 = mydata.OpenRecordset("user", dbOpenTable)
Else
Set mydata = CreateDatabase(App.Path &"\hjw", dbLangGeneral, dbVersion40)
mydata.Execute "create table ku (建立日期 text(100),库名 text(100),功能 text(100))"
mydata.Execute "create table system (店号 integer,建立日期 text(100),文件路径 text(100),软件版本 text(100),路径1 text(50),路径2 text(50),路径3 text(50),路径4 text(50))"
kuname = "system"
kugn = "文件信息"
Me.showlist1
mydata.Execute "create table user (user text(50),passwd text(50),name text(50),quanx integer)"
kuname = "user"
kugn = "用户信息"
Me.showlist1
Private Sub cmdOK_Click()
txtUserName.SetFocus
If Trim(txtUserName.Text = "") Then
MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告"
txtUserName.SetFocus
Else
sql = "select * from user where user = '" &txtUserName.Text &"'"
'Debug.Print sql
'Set mrc = ExecuteSQL(sql, MsgText)
Set myrs2 = mydata.OpenRecordset(sql)
If myrs2.EOF = True Then
MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告"
txtUserName.SetFocus
Else
If Trim(myrs2.Fields(1)) = Trim(txtPassword.Text) Then
UserName = myrs2.Fields(2)
myrs2.Close
Me.Hide
' UserName = Trim(txtUserName.Text)
'Debug.Print UserName
MDIform1.Show
Else
MsgBox "输入密码不正确,请重新输入!", vbOKOnly + vbExclamation, "警告"
txtPassword.SetFocus
txtPassword.Text = ""
End If
End If
End If
End Sub
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)