當前位置:首頁 » 編程語言 » vb連接sql資料庫的步驟
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

vb連接sql資料庫的步驟

發布時間: 2022-09-14 16:09:21

Ⅰ VB連接sql資料庫具體操作

Option Explicit
Private Function Selectsql(SQL As String) As ADODB.Recordset '返回ADODB.Recordset對象
Dim ConnStr As String
Dim Conn As ADODB.Connection
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Set Conn = New ADODB.Connection

'On Error GoTo MyErr:
ConnStr = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=登錄資料庫用戶名(默認為sa);Password=登錄資料庫密碼;Initial Catalog=資料庫名;Data Source=伺服器名(默認為:MERRYCHINA)" '這是連接SQL資料庫的語句
Conn.Open ConnStr
rs.CursorLocation = adUseClient
rs.Open Trim$(SQL), Conn, adOpenDynamic, adLockOptimistic
Set Selectsql = rs
'Exit Function
'MyErr:
'Set rs = Nothing
'Set Conn = Nothing '釋放相關的系統資源
'MsgBox Err.Description, vbInformation, "系統提示" '顯示出錯信息
End Function
Private Sub Form_Load()
Dim SQL As String
Dim rs As ADODB.Recordset
Dim X As Long
On Error GoTo Err_box
SQL = " select * from 用戶表"
Set rs = Selectsql(SQL)
If rs.RecordCount > 0 Then
rs.MoveFirst
For X = 1 To rs.RecordCount
Combo1.AddItem rs.Fields("用戶名").Value
rs.MoveNext
Next X
Combo1.ListIndex = 0
End If
rs.Close
Exit Sub
Err_box:
End Sub
Private Sub Command1_Click()
Dim SQL As String
Dim rs As ADODB.Recordset
If Text1.Text = "" Then
MsgBox "請輸入口令!", 16
Text1.SetFocus
Exit Sub
End If
If Combo1.Text = "" Then
MsgBox "請選擇登錄用戶!", 16
Combo1.SetFocus
Exit Sub
End If
SQL = "SELECT * FROM 用戶表 WHERE 用戶名='" & Combo1.Text & "' AND 密碼='" & Text1.Text & "' "
Set rs = Selectsql(SQL)
If rs.RecordCount > 0 Then
Form1.Show '想要打開的主窗體
MsgBox "恭喜兄弟,登錄成功!", 64, "提示"
Unload Me
Else
MsgBox "口令不對,請重新輸入!", 16, "提示"
Text1.SetFocus
End If
End Sub
'**********************************************************************
'說明:1) 在工程中引用Microsoft ActiveX Data Objects 2.8 Library ,其它版本也行如:2.0
' 2) 在窗體中加Texe1.text(文本框控制項),Combo1.text(組合框控制項),Command1(命令按鈕)各一個
' 3) 在SQL Server2000中創建資料庫,新建表"用戶表",表中包含"ID,姓名,密碼"等欄位,然後將以上代碼復制,OK搞定
4) 以上方式無需載入ADO控制項,方便!

Ⅱ VB如何連接SQL資料庫

一個用VB連接SQL資料庫連接的模塊2007年01月22日 星期一 下午 05:29下面是一個連接資料庫的模塊,大家可以使用它來連接SQL資料庫,使用起來比ADO控制項還簡單:
代碼如下:
Public rsNew As ADODB.Recordset
Public CnNew As ADODB.Connection
Public addFlag As Boolean
'連接資料庫
Public Function OpenCn() As Boolean
Dim Mag As String
On Error GoTo strErrMag
Set CnNew = New ADODB.Connection
CnNew.ConnectionTimeout = 25
CnNew.Provider = "sqloledb"
CnNew.Properties("data source").value = "" 'SQL伺服器的名
CnNew.Properties("initial catalog").value = "pubs"'庫名
CnNew.Properties("integrated security").value = "SSPI"'登陸類型
'con.Properties("user id").value = "sa"
'con.Properties("password").value = "wwww"

CnNew.Open
OpenCn = True
addFlag = True
Exit Function
strErrMag:
Mag = "資料庫末連接"
Call MsgBox(Mag, vbOKCancel, "錯誤:資料庫連接")
addFlag = False
End
End Function
Public Sub Clocn()
'閉關資料庫
On Error Resume Next
If CnNew.State <> adStateClosed Then CnNew.Close
Set CnNew = Nothing
End Sub
Public Function OpenRs(ByVal strSql As String) As Boolean
'連接資料庫記錄集
Dim Mag As String
Dim rpy As Boolean
On Error GoTo strErrMag
Set rsNew = New ADODB.Recordset
If addFlag = False Then rpy = OpenCn
With rsNew
.ActiveConnection = CnNew
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open strSql
End With
addFlag = True
OpenRs = True
Exit Function
strErrMag:
Mag = "資料庫數據集末連接"
Call MsgBox(Mag, vbOKOnly, "錯誤:資料庫連接")
OpenRs = False
End
End Function
Public Sub cloRs()
'閉關數據集
On Error Resume Next
If rsNew.State <> adStateClosed Then rsNew.Close
Set rsNew = Nothing
End Sub

只要在你的標准模塊中加入該代碼,你就可以使用其中的函數來連接數據源了。

Ⅲ vb如何連接sql資料庫

1、打開代碼窗口,添加引用:Imports System.Data.SqlClient。

Ⅳ vb怎麼連接sql

在窗體上添加adodc控制項
滑鼠右鍵-adodc屬性-在通用選項卡里,點生成,選for
SQL
Server驅動程序-下一步-連接選項卡里
1.輸入伺服器名稱,2.使用Windows
NT
集成安全設置。3.選擇一個資料庫
點測試連接,看看是否成功。按確定
點記錄源選項卡,命令類型選8,命令文本(SQL)寫:select
*
from
table1
確定,就連接到SQL資料庫的表table1了。
Private
Sub
Command1_Click()
If
Not
Adodc1.Recordset.EOF
Then
Text1.Text
=
Adodc1.Recordset.Fields("line1")
End
If
End
Sub

Ⅳ VB怎麼連接MSSql資料庫

要連接SQL資料庫有兩種方法用ADODC或ADO。
方法一:
(ADODC)
首先須引用Projects-Components-Microsoft
ADO
Data
Controls
6.0
(OLEDB)。
之後在表單設置ADODC控制項。然後Form_Load()輸入以下代碼:
Private
Sub
Form_Load()
ADODC1.ConnectionString
=
"Provider=SQLOLEDB;Password=密碼;Persist
Security
Info=False;User
ID=用戶名;Initial
Catalog=資料庫名;Data
Source=伺服器名"
ADODC1.CommandType
=
adCmdText
ADODC1.RecordSource
=
"select
*
from
表格名稱"
ADODC1.Refresh
End
Sub
方法二:
(ADO)
首先須引用Projects-References-Microsoft
Active
X
Data
Objects
2.0
Library。
注意以下兩段須寫在程式最上面(Gerenal一般)中。
Dim
cn
As
New
ADODB.Connection
Dim
rs
As
New
ADODB.Recordset
Dim
SQL
As
String
然後在Form_Load()輸入以下代碼:
Private
Sub
Form_Load()
cn.ConnectionString
=
"Provider=SQLOLEDB;Password=密碼;Persist
Security
Info=False;User
ID=用戶名;Initial
Catalog=資料庫名;Data
Source=伺服器名"
cn.Open
If
rs.State
=
adStateOpen
Then
rs.Close
rs.CursorLocation
=
adUseClient
SQL
=
"select
*
from
表格名"
rs.Open
Trim$(SQL),
cn,
adOpenKeyset,
adLockPessimistic
End
Sub

Ⅵ 如何用vb鏈接sql的資料庫

這段代碼寫在模塊中,可以連接一個資料庫

Public
DBConnct
As
New
ADODB.Connection
'連接資料庫

Public
Function
Connt()
As
Boolean
'資料庫連接函數
Dim
splstr
As
String
'App.Path
&
"\db\123.mdb為資料庫路徑
splstr
=
"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="
& App.Path
&
"\db\123.mdb"
& ";Persist
Security
Info=False"
DBConnct.Open
splstr
'連接資料庫
Connt
=
True
End
Function

Ⅶ vb怎麼連入SQL資料庫,請詳細一些,真心不明白

夠詳細了吧

Public conbook As ADODB.Connection '聲明全局的連接對象變數

Public Sub Main() '入口程序
Dim bln As Boolean
bln = opensqlserver
If bln = True Then
On Error GoTo connerr
End If
Dim s As String
Dim fn As String '文件名

'如果資料庫booksystem已經存在,先刪除
conbook.Execute ("IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = 'booksystem') EXEC sp_detach_db 'booksystem', 'true'")
'查找資料庫文件是否存在,如果存在則根據文件附加資料庫
If Dir(App.Path & "\database\*.mdf") <> "" And Dir(App.Path & "\database\*.ldf") <> "" Then
'存在時根據文件附加資料庫
s = "exec sp_attach_db @dbname='booksystem', @filename1= '" & App.Path & "\database\booksystem_data.mdf', @filename2='" & App.Path & "\database\booksystem_log.ldf'"
conbook.Execute (s) '附加資料庫
Else
'資料庫文件不存在,則先查找備份文件是否存在,如果存在,根據備份還原資料庫
fn = Dir(App.Path & "\database\*.dat")
If fn <> "" Then
s = "restore database booksystem from disk='" & App.Path & "\database\" & fn & "' with recovery,move 'booksystem_data' to '" & _
App.Path & "\database\booksystem_data.mdf' ,move 'booksystem_log' to '" & App.Path & "\database\booksystem_log.ldf'"
conbook.Execute s '恢復資料庫到工程路徑
Else
'備份文件不存在,則先根據sql語句創建資料庫
Call createdb '調用過程,創建資料庫
End If
End If
'附加成功後將當前資料庫設置為student
conbook.Execute ("use booksystem")
frmStar.Show
'MDIMain.Show
Exit Sub

connerr:
MsgBox Err.Description
End Sub
'自定義函數,打開和SQL資料庫的連接
Public Function opensqlserver() As Boolean
On Error GoTo conerr

Set conbook = New ADODB.Connection
With conbook
.Provider = "sqloledb"
.ConnectionTimeout = 30
.CommandTimeout = 30
.ConnectionString = "data source=.;user id=sa;password=;database=master" '連接字元串
.Open
End With
opensqlserver = True
Exit Function
conerr:
MsgBox "資料庫連接失敗!" & Err.Description
opensqlserver = False
End Function

Public Function rsopen(rs As ADODB.Recordset, sql As String) As Boolean
On Error GoTo rserr
'分配內存
Set rs = New ADODB.Recordset
'設置屬性
rs.CursorLocation = adUseClient '客戶端游標
rs.Open sql, conbook, adOpenStatic, adLockOptimistic, adCmdText
rsopen = True
Exit Function
rserr:
MsgBox "記錄集打開失敗!" & Err.Description
rsopen = False
End Function

Private Sub createdb() '自定義過程,創建資料庫
On Error GoTo dberr
Dim s As String
Dim sql As String
Dim fn As String
'在工程路徑下查找sql文件
fn = Dir(App.Path & "\database\*.sql")
If fn <> "" Then '如果存在,打開文件,執行sql語句
fn = App.Path & "\database\" & fn '獲得文件路徑名
Open fn For Input As #1
While EOF(1) = False
Line Input #1, s
sql = sql & s & vbCrLf ' 從文件中讀取sql命令
Wend
conbook.Execute sql '執行sql創建資料庫和表
Close #1 '關閉文件
Else
'不存在,則執行指定的sql語句創建資料庫
s = "create database booksystem on(name='booksystem_data',filename='" & App.Path & "\database\booksystem_data.mdf',size=2,filegrowth=1)" & _
"log on(name='booksystem_log',filename='" & App.Path & "\database\booksystem_log.ldf',size=2,filegrowth=1)"
Open App.Path & "\database\booksystem.sql" For Output As #2 '打開文件,存儲sql語句
Print #2, s '向文件中寫入數據
Close #2 '關閉文件
MsgBox "創建資料庫的sql語句已經寫入文件", , "寫入數據"
conbook.Execute s '執行sql語句創建資料庫
End If
Exit Sub

dberr:
MsgBox "創建資料庫失敗!" & Err.Description
End
End Sub

Public Sub over()
On Error GoTo erra
'分離資料庫,結束程序的運行
If conbook.State = 1 Then
conbook.Execute ("backup database booksystem to disk='" & App.Path & "\database\backupbooksystem.dat'") '備份資料庫
conbook.Execute ("use master")
conbook.Execute ("EXEC sp_detach_db 'booksystem', 'true'") '分離資料庫
conbook.Close '關閉連接
Set conbook = Nothing '釋放內存
End If
End '結束程序
Exit Sub
erra:
End Sub

Ⅷ VB怎麼連接 SQL 資料庫

一個簡單的方法:
首先,建立程序公共模塊輸入以下代碼:
Public conn As New ADODB.Connection
'全局變數 rst 指針
Public rst As New ADODB.Recordset
'全局調用函數 打開資料庫
Public Function openconn()
conn.ConnectionString = "連接信息"
'此連接信息最簡單的生成辦法:
'在任意窗口下建立一新ADODC控制項
'選擇控制項屬性,通用頁,使用連接字元串,生成(U)
'利用該向導生成出字元串,然後將該字元串復制到"連接信息"中即可
conn.Open
End Function
'全局調用函數 關閉資料庫
Public Function closeconn()
If conn.State = 1 Then
conn.Close
Set conn = Nothing
End If
End Function

然後在窗體文件中可以使用的函數:
打開資料庫:openconn
注意:此函數為自定義函數,無參數,定義在公共模塊中!
建立數據表連接:Set rst = conn.Execute("select * from 數據表名")
如做登陸頁可以這樣判斷用戶名密碼:
Text1.Text = RTrim(rst.Fields("id")) And Text2.Text = RTrim(rst.Fields("password"))
注:其中Text1.Text為輸入用戶名TextBOX Text2.Text為輸入密碼TextBOX
數據表中 id 為保存用戶名 password 為保存密碼!此方法為非加密方法!
關閉資料庫函數:
closeconn
Set rst = Nothing
注:此兩行,必須在打開資料庫的情況下使用!並且每打開一次資料庫後必須先使用此兩句將資料庫關閉後才可打開另一資料庫表文件!!!!!否則程序報錯終止!
添加新數據函數
rst.AddNew
rst("欄位名1") = Text1.Text
rst("欄位名2") = Text2.Text
rst.Update
刪除數據函數
rst.Delete
注:使用此函數前,必須保證資料庫指針函數rst指向需刪除數據,移動rst指針可以使用函數:rst.MoveNext或rst.MoveLast
更新數據函數
rst.Open "update 數據表名 set 欄位1='" + Text1.Text + "',欄位2='" + Text2.Text + "' where id='" + Text3.Text + "'", conn, 1, 3
注,其中 where id = 為更新特定數據表的查找!
如果熟悉SQL語句,還可編寫出其他方式的查找,這里就不多做介紹了!

Ⅸ VB連接SQL最簡單方法

Public conn As ADODB.Connection Public rs As ADODB.Recordset Public addFlag As Boolean '聲明部分 Public Function OpenCn(ByVal Cip As String, ByVal users As String, ByVal pw As String, ByVal sjk As String) As Boolean '連接模塊 填寫資料庫等信息 Dim mag As String On Error GoTo strerrmag Set conn = New ADODB.Connection conn.ConnectionTimeout = 25 conn.Provider = "sqloledb" conn.Properties("data source").Value = Cip '伺服器的名字 conn.Properties("initial catalog").Value = sjk '庫名 'conn.Properties("integrated security").Value = "SSPI" '登陸類型 conn.Properties("user id").Value = users 'SQL庫用戶名 conn.Properties("password").Value = pw '密碼 conn.Open OpenCn = True If conn.State = 1 Then addFlag = True Exit Function strerrmag: mag = "連接失敗!" Call MsgBox(mag, vbOKOnly, "錯誤:") addFlag = False Exit Function '連接錯誤消息 End Function '關閉資料庫,釋放連接 Public Sub cloCn() On Error Resume Next If conn.State <> adStateClosed Then conn.Close Set conn = Nothing End Sub Public Function openRs(ByVal strsql As String) As Boolean '連接資料庫記錄集 Dim mag As String Dim rpy As Boolean On Error GoTo strerrmag Set rs = New ADODB.Recordset If addFlag = False Then rpy = True With rs .ActiveConnection = conn .CursorLocation = adUseClient .CursorType = adOpenKeyset .LockType = adLockOptimistic .Open strsql End With addFlag = True openRs = True 'End '將記錄集給rs Exit Function strerrmag: mag = "記錄返回錯誤!" Call MsgBox(mag, vbOKOnly, "錯誤:") openRs = False 'End Exit Function '連接錯誤消息 End Function Public Sub cloRs() On Error Resume Next If rs.State <> adStateClosed Then rs.Clone Set rs = Nothing '釋放記錄集 End Sub