⑴ vb sql登陸代碼
你用了Adodc組件綁定的話很慢的.像你上面的代碼在正式客戶開發時,上面的代碼是通不過的,原因有以下幾點,1.代碼結構流程設計不符合規范,2.代碼的執行效率很低,3.代碼可用性很低等等.
用下面的方法,在工程菜單中選擇引用,在列表中選中 Microsoft ActiveX Data Object 2.1
Dim cnn As New Connection
Private Sub Command1_Click()
Dim rs As New Recordset
Dim mstrsql As String
Dim user, pass As String
user = Text1.Text
pass = Text2.Text
Set rs = New Recordset
mstrsql = "select * from 用戶表 where 用戶名='" & user & "'"
rs.Open mstrsql, cnn, adOpenStatic, 1
If rs.RecordCount > 0 Then
If pass <> rs("密碼") Then
MsgBox "密碼錯誤!"
Else
If Combo1.Text = "普通用戶" Then
If rs("類別") <> 0 Then
MsgBox "類別錯誤!"
End If
Else
If rs("類別") <> 1 Then
MsgBox "類別錯誤!"
End If
End If
End If
Else
MsgBox "無此用戶!"
End If
rs.Close
Set rs = Nothing
End Sub
Private Sub Form_Load()
'連接數據源
Set cnn = New Connection
cnn.Open "dsn=yjzw" '使用DSN連接資料庫
End Sub
Private Sub Form_Unload(Cancel As Integer)
'關閉數據連接
cnn.Close
Set cnn = Nothing
End Sub
⑵ 如何用VB連接SQL資料庫做登錄
VB連接SQL資料庫,可通過ADO數據對象和SQL結構化查詢語言實現。
ADO (ActiveX 數據對象), 這項新的數據訪問技術的特性包括:更簡單的對象模型;與其它 Microsoft 和非 Microsoft
的技術更好的集成;為本地和遠程數據數據提供的通用介面;可遠程訪問的和斷開的記錄集;用戶可訪問的數據綁定介面;以及層次結構的記錄集。結構化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的編程語言,是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統。
代碼示例:
Private Sub XPButton1_Click()
On Error GoTo finish '防錯代碼,防止意外而導致的退出
sql = "select * from 用戶管理 where 用戶名='" & Text1.Text & "' and 密碼='" & Text2.Text & "'"
cn.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=**;Pwd=***;Data Source=**;Initial Catalog=***"
cn.Open
rs.CursorLocation = adUseClient
rs.Open sql, cn, adOpenDynamic, adLockOptimistic
'以上使用最通用的方法來查詢資料庫中是否有匹配的記錄
If rs.EOF = True Then '如果沒有記錄則說明用戶或密碼為錯誤的
If pnum < 2 Then 'pnum就是密碼驗證次數,當次數超過3次,系統會自動保護退出
pnum = pnum + 1
MsgBox "用戶名或密碼錯誤!", vbInformation, "錯誤次數:" & pnum
rs.Close
cn.Close
Text1.Text = ""
Text2.Text = ""
Text1.SetFocus
Exit Sub
Else
MsgBox "用戶名或密碼錯誤超過三次,系統會自動退出", vbInformation, "提示"
End
End If
Else
loginname = rs.Fields(0)
Form1.Show
rs.Close
cn.Close
End If
Exit Sub
finish:
MsgBox Err.Description
rs.Close
cn.Close
End Sub
注意cn.ConnectionString此句需依據實際的SQL資料庫建立連接獲得的字元串。
⑶ 如何用VB連接SQL資料庫做登錄
VB連接資料庫方式主要有兩種,一是通過ODBC介面,ODBC是windows系統里提供的介面,專門連接資料庫的,可以連接多種資料庫,在應用電腦的設置ODBC,也就DSN數據源(下面說到的),連接到伺服器。
第二種就是ADO方式,
VB使用ADO資料庫可以分為有源資料庫和無源資料庫,即是否使用了DSN數據源,如下例:
1、在連接資料庫前首先要在VB菜單中「工程」-「引用」從中選擇 microsoft activeX Data objects 2.6 library和 microsoft activeX Data objects recordset 2.6兩個組件,這是在連接數據前所必做的工作。
2、接下來定義ADO的連接對象,如下所示:
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
第一種方法採用的是無源的資料庫連接方法
conn.ConnectionString = "Driver={sql server};server=JSZX3-11;uid=sa;pwd=;database=wzc"
conn.ConnectionTimeout = 30
conn.Open
rs.Open "select 用戶名,密碼 from login where 用戶名='" & Trim(Combo1.Text) & "' And 密碼='" & Trim(Text1.Text) & "'", conn, adOpenStatic, adLockReadOnly, adCmdText
If rs.EOF = True And rs.BOF Then
m = MsgBox("請重新登錄", vbExclamation)
Text1.Text = ""
Text1.SetFocus
Else
Form1.Hide
End If
rs.Close
這是第二種方法連接資料庫的方法,這一種方法是採用有源的方法與資料庫連接的方法,代碼如下所示:
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.ConnectionString = "DSN=login;uid=sa;pwd=;"
conn.ConnectionTimeout = 30
conn.Open
rs.Open "select 用戶名 from login", conn, adOpenStatic, adLockReadOnly, adCmdText
Dim i As String
For t = 0 To Val(rs.RecordCount) - 1
i = Trim(rs.Fields("用戶名").Value)
rs.MoveNext
Combo1.AddItem i
Next t
rs.Close
連接資料庫的方法很多很多,只要各位去勇敢的償試一下,就可以感覺資料庫的方法並不是很難,本人以前也很想做這方法的工作,只是學識不深,未能完成胸中大志,如今對這些方法的多少有一些了解,特意為那些初學者以供學習之用。
VB使用ADO資料庫可以分為有源資料庫和無源資料庫,即是否使用了DSN數據源,如下例:
1、在連接資料庫前首先要在VB菜單中「工程」-「引用」從中選擇 microsoft activeX Data objects 2.6 library和 microsoft activeX Data objects recordset 2.6兩個組件,這是在連接數據前所必做的工作。
2、接下來定義ADO的連接對象,如下所示:
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
第一種方法採用的是無源的資料庫連接方法
conn.ConnectionString = "Driver={sql server};server=JSZX3-11;uid=sa;pwd=;database=wzc"
conn.ConnectionTimeout = 30
conn.Open
rs.Open "select 用戶名,密碼 from login where 用戶名='" & Trim(Combo1.Text) & "' And 密碼='" & Trim(Text1.Text) & "'", conn, adOpenStatic, adLockReadOnly, adCmdText
If rs.EOF = True And rs.BOF Then
m = MsgBox("請重新登錄", vbExclamation)
Text1.Text = ""
Text1.SetFocus
Else
Form1.Hide
End If
rs.Close
這是第二種方法連接資料庫的方法,這一種方法是採用有源的方法與資料庫連接的方法,代碼如下所示:
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.ConnectionString = "DSN=login;uid=sa;pwd=;"
conn.ConnectionTimeout = 30
conn.Open
rs.Open "select 用戶名 from login", conn, adOpenStatic, adLockReadOnly, adCmdText
Dim i As String
For t = 0 To Val(rs.RecordCount) - 1
i = Trim(rs.Fields("用戶名").Value)
rs.MoveNext
Combo1.AddItem i
Next t
rs.Close
連接資料庫的方法很多很多,只要各位去勇敢的償試一下,就可以感覺資料庫的方法並不是很難,本人以前也很想做這方法的工作,只是學識不深,未能完成胸中大志,如今對這些方法的多少有一些了解,特意為那些初學者以供學習之用。
⑷ 如何用VB連接SQL資料庫做登錄
使用ADODC控制項,設置adodc控制項的ConnectionString 屬性為"Provider=SQLOLEDB.1;Password=資料庫登錄密碼;Persist Security Info=True;User ID=資料庫登錄名;Initial Catalog=資料庫名稱;Data Source=伺服器名稱或IP地址"
然後設置Adodc1.CommandType=表名或者SQL數據源
Adodc1.RecordSource=表名或者SQL語句
adodc1.Refresh
以上就已經連接上一個指定的數據源了,接下來就可以進行各種操作啦
⑸ 如何用VB連接SQL資料庫做登錄
一、配置ODBC數據源
1、在控制面板中,雙擊管理工具,然後打開ODBC數據源管理器。
2、在「系統DSN」選項卡中,單擊「添加」按鈕,打開「創建新數據源」對話框,在「名稱」列表框中選擇「SQL Server」。選好單擊完成
3、在打開「建立新的數據源到SQL Server」對話框,在「名稱」文本框輸入新數據源的名稱,描述數據源按你理解的方式來寫(隨意)。「伺服器」就選擇你要連接到的伺服器。
4、選擇使用用戶輸入登錄的ID和密碼的SQL 驗證
。選連接SQL默認設置
5、再下一步下一步,完成。測試數據源看連接是否成功就行了。成功後按確定。
二、VB中設置連接
1、添加部件Mircrosoft ADO Data Control 6.0(OLEDB),把部件拖到窗體。
2、對ADO部件點右鍵選屬性,選擇使用連接字元串,按生成。
3、選擇Mircosoft OLE DB Providar for SQL Server
按下一步
4、
1、輸入伺服器名稱
2、使用指定的伺服器信息
3、在伺服器上選擇資料庫
這時就選擇你在SQL Server建好的資料庫就行了
5、測試連接可以看到連接是否成功!
⑹ 如何用VB連接SQL資料庫做登錄
一、界面設計
各控制項名稱屬性分別為:label1 、text1 、label2、text2、commandok、cmdcancel
二、代碼設計如下:
1、首先添加一個模塊,寫上以下通用聲明和Sub main():
Public conn As ADODB.Connection '通用(聲明)
Sub main()
Set conn = New ADODB.Connection '通用(main)
conn.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;" _
+ "User ID=sa;password=123;Initial Catalog=denglu;Data Source=127.0.0.1" '連接資料庫代碼
conn.Open
frmLogin.Show '首先顯示登錄界面。也可以在工程屬性中設置啟動對象為Sub main()或者frmlogin窗體
End Sub
2、在Frmlogin 代碼窗口,為cmdok控制項寫以下代碼:
Private Sub cmdok_Click()
If text1.Text = "" Then
MsgBox "用戶名不能為空!", vbOKOnly + vbInformation, "友情提示"
text1.SetFocus
Exit Sub '若用戶名文本框內為空,則出現提示框
End If
If text2.Text = "" Then
MsgBox "密碼不能為空!", vbOKOnly + vbInformation, "友情提示"
text2.SetFocus
Exit Sub '若輸入密碼文本框為空,也出現提示框
End If
Dim strSQl As String
strSQl = "select * from User1 where username='" & Trim$(text1.Text) & "' and pwd='" & Trim$(text2.Text) & "' "
3、書寫SQL代碼,查詢User1表中是否存在窗體中用戶輸入的信息。
Dim str As New ADODB.Recordset
Set str = New ADODB.Recordset
str.CursorLocation = adUseClient
str.Open strSQl, conn, adOpenStatic, adLockReadOnly
With str
If .State = adStateOpen Then .Close
.Open strSQl
If .EOF Then
Try_times = Try_times + 1
If Try_times >= 3 Then
MsgBox "您已連續三次輸入錯誤,系統將自動關閉", vbOKOnly + vbCritical, "警告"
Unload Me '若用戶連續輸入3次錯誤密碼,則系統關閉
Else
MsgBox "對不起,用戶名不存在或密碼錯誤 !", vbOKOnly + vbQuestion, "警告"
text1.SetFocus
text1.Text = ""
text2.Text = ""
End If
Else
Unload Me '若登錄成功,則隱藏當前窗體
Form2.Show '然後顯示Form窗體
End If
End With
End Sub
Private Sub cmdCancel_Click()
End '若單擊Cmdcel按鈕,則結束應用程序
End Sub
4、運行中存在的問題:
代碼中有Dim conn As adodb.connection,運行時顯示"用戶定義類型未定義"
解決方法:點擊「工程」--「引用」找到「Microsoft ActiveX Data Object 2.6」
⑺ 如何用VB連接SQL資料庫做登錄
VB連接SQL資料庫,可通過ADO數據對象和SQL結構化查詢語言實現。
ADO (ActiveX 數據對象), 這項新的數據訪問技術的特性包括:更簡單的對象模型;與其它 Microsoft 和非 Microsoft
的技術更好的集成;為本地和遠程數據數據提供的通用介面;可遠程訪問的和斷開的記錄集;用戶可訪問的數據綁定介面;以及層次結構的記錄集。結構化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的編程語言,是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統。
代碼示例:
Private Sub XPButton1_Click()
On Error GoTo finish '防錯代碼,防止意外而導致的退出
sql = "select * from 用戶管理 where 用戶名='" & Text1.Text & "' and 密碼='" & Text2.Text & "'"
cn.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=登錄資料庫用戶名(默認為sa);Password=登錄資料庫密碼;Initial Catalog=資料庫名;Data Source=伺服器名(默認為:MERRYCHINA)" '這是連接SQL資料庫的語句
cn.Open
rs.CursorLocation = adUseClient
rs.Open sql, cn, adOpenDynamic, adLockOptimistic
'以上使用最通用的方法來查詢資料庫中是否有匹配的記錄
If rs.EOF = True Then '如果沒有記錄則說明用戶或密碼為錯誤的
If pnum < 2 Then 'pnum就是密碼驗證次數,當次數超過3次,系統會自動保護退出
pnum = pnum + 1
MsgBox "用戶名或密碼錯誤!", vbInformation, "錯誤次數:" & pnum
rs.Close
cn.Close
Text1.Text = ""
Text2.Text = ""
Text1.SetFocus
Exit Sub
Else
MsgBox "用戶名或密碼錯誤超過三次,系統會自動退出", vbInformation, "提示"
End
End If
Else
loginname = rs.Fields(0)
Form1.Show
rs.Close
cn.Close
End If
Exit Sub
finish:
MsgBox Err.Description
rs.Close
cn.Close
End Sub
注意cn.ConnectionString此句需依據實際的SQL資料庫建立連接獲得的字元串。