⑴ vb怎麼連接資料庫寫入數據
'在使用前需要先安裝Mysql的驅動,進行正確配置
'注意:必須給出正確的伺服器名、資料庫名、表名、資料庫連接的用戶名、密碼
Option Explicit
Dim Cnn As ADODB.Connection '定義ADO連接對象
Dim Records As ADODB.Recordset '定義ADO記錄集對象
'連接到資料庫
Function CnnOpen(ByVal ServerName As String, ByVal DBName As String, ByVal TblName As String, ByVal User As String, ByVal PWD As String) '伺服器名或IP、資料庫名、登錄用戶、密碼
Dim CnnStr As String '定義連接字元串
Set Cnn = CreateObject("ADODB.Connection") '創建ADO連接對象
Cnn.CommandTimeout = 15 '設置超時時間
CnnStr = "DRIVER={MySql ODBC 5.1 Driver};SERVER=" & ServerName & ";Database=" & DBName & ";Uid=" & User & ";Pwd=" & PWD & ";Stmt=set names GBK" '
Cnn.ConnectionString = CnnStr
Cnn.Open
End Function
'關閉連接
Function CnnClose()
If Cnn.State = 1 Then
Cnn.Close
End If
End Function
'把Excel寫入MySql中的資料庫
Function InsertToMySql(ByVal SheetName As String, ByVal TblName As String)
Dim SqlStr As String
Dim i, j As Integer
Dim Columns, Rows As Integer
Columns = VBAProject.func_public.GetTotalColumns(SheetName)
Rows = VBAProject.func_public.GetTotalRows(SheetName)
Set Records = CreateObject("ADODB.recordset")
'取得結果集並插入數據到資料庫
Set Records = CreateObject("ADODB.Recordset")
'以下語句提供了插入思路,我只是把單條記錄的插入方式改為循環,以把所有的記錄添加到表中
'rs.Open "insert into newtable values('" & ActiveSheet.Cells(i, 1).Value & "'," & "'" & ActiveSheet.Cells(i, 2).Value & "')", cnn, 0
For i = 2 To Rows
SqlStr = "INSERT INTO " & TblName & " values('" & Sheets(SheetName).Cells(i, 1).Value & "'" '注意:" values('",字母「v」之前是有空格的!!!
For j = 2 To Columns
SqlStr = SqlStr & ",'" & Sheets(SheetName).Cells(i, j).Value & "'"
Next
SqlStr = SqlStr & ")"
Set Records = Cnn.Execute(SqlStr) 'rs.Open SqlStr, cnn, 0 不能用這條語句實現!!!
Next
MsgBox "Insert!", vbOKOnly, "Excel To MySql"
End Function
'清除對象
Function ClearObj()
Set Cnn = Nothing
Set Records = Nothing
End Function
⑵ 怎麼把VB 和資料庫連接起來
ado
//使用ADO控制項集動態打開ACCESS資料庫列程
//本方法主要面向客戶選擇目標ACCESS資料庫
//取代彈出的ConnectionString的設置對話框
//註:ADOTable和ADOQuery控制項的連接字串不同
//著名關心CSDN結貼率愛國人士-實用庫Tip No 1 - 2003-9-25
function FileName_DataBasePassWord(FileName:string; DataBasePassWord:string=''):string;
begin
FileName_DataBasePassWord:='Provider=Microsoft.Jet.OLEDB.4.0;'+
'User ID=Admin;Data Source='+
form1.OpenDialog1.FileName+ //資料庫文件路徑
';Mode=Share Deny None;Extended Properties="";'+
'Jet OLEDB:System database="";'+
'Jet OLEDB:Registry Path="";'+
'Jet OLEDB:Database Password='+
DataBasePassWord+ //資料庫密碼
';Jet OLEDB:Engine Type=5;'+
'Jet OLEDB:Database Locking Mode=1;'+
'Jet OLEDB:Global Partial Bulk Ops=2;'+
'Jet OLEDB:Global Bulk Transactions=1;'+
'Jet OLEDB:New Database Password="";'+
'Jet OLEDB:Create System Database=False;'+
'Jet OLEDB:Encrypt Database=False;'+
'Jet OLEDB:Don''t Copy Locale on Compact=False;'+
'Jet OLEDB:Compact Without Replica Repair=False;'+
'Jet OLEDB:SFP=False';
end;
procere TForm1.DynamicOpenAdoAccess_BtnClick(Sender: TObject);
begin
form1.OpenDialog1.Filter:='Text files (*.mdb)|*.MDB';
form1.OpenDialog1.DefaultExt:='MDB';
form1.OpenDialog1.InitialDir:=application.GetNamePath;
form1.OpenDialog1.Title:='指定Access資料庫Mdb文件的位置';
if form1.OpenDialog1.Execute then
begin
form1.ADOConnection1.LoginPrompt:=false;
//帶密碼資料庫的使用
//form1.ADOConnection1.ConnectionString:=FileName_DataBasePassWord(form1.OpenDialog1.FileName,'ghyghost');
//不帶密碼數據的使用
form1.ADOConnection1.ConnectionString:=FileName_DataBasePassWord(form1.OpenDialog1.FileName);
form1.ADOConnection1.Open;
form1.ADOQuery1.open; //ADOQuery1's SQL Properties is 'select * from [tablename]'
end;
end;
⑶ vb與sql資料庫連接
一、是否修改後的密碼沒有生效,原密碼能否連接
二、是否修改後的新密碼含有特殊字元
⑷ 如何用vb連接mysql資料庫
VB連接MYSQL數據的方法
博客分類:
VB
VBMySQLSQLServerSQLSocket
第一步:上網http://dev.mysql.com/downloads/connector/odbc/下載mysql-connector-odbc-5.1.6-win32.msi
第二步:安裝mysql-connector-odbc-5.1.6-win32.msi
第三步:運行VB並新建一標准EXE工程, 通過菜單工程->引用 打開」引用」對話框, 找到 MicrosoftActiveX Data Objects x.x Library , 其中 x.x 是版本號, 可能會有很多個, 這里我選擇的是2.5
第四步:打開代碼窗口, 在 Form_Load 過程中輸入下面的代碼(具體說明在代碼的注釋中):
Vb代碼
' 定義並創建資料庫連接和訪問對象
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
' 定義資料庫連接字元串變數
Dim strCn As String
' 定義資料庫連接參數變數
Dim db_host As String
Dim db_user As String
Dim db_pass As String
Dim db_data As String
' 定義 SQL 語句變數
Dim sql As String
' 初始化資料庫連接變數
db_host = "localhost"
db_user = "root"
db_pass = ""
db_data = "erqiuda"
' MySQL ODBC 連接參數
'+------------+---------------------+----------------------------------+
'| 參數名 | 默認值 | 說明 |
'+------------+------------------------------------------------------–+
'| user | ODBC (on Windows) | MySQL 用戶名 |
'| server | localhost | MySQL 伺服器地址 |
'| database | | 默認連接資料庫 |
'| option | 0 | 參數用以指定連接的工作方式 |
'| port | 3306 | 連接埠 |
'| stmt | | 一段聲明, 可以在連接資料庫後運行 |
'| password | | MySQL 用戶密碼 |
'| socket | | (略) |
'+------------+---------------------+----------------------------------+
' 詳細查看官方說明
' http://dev.mysql.com/doc/refman/5.0/en/myodbc-configuration-connection-parameters.html
strCn = "DRIVER={MySQL ODBC 5.1 Driver};" & _
"SERVER=" & db_host & ";" & _
"DATABASE=" & db_data & ";" & _
"UID=" & db_user & ";PWD=" & db_pass & ";" & _
"OPTION=3;stmt=SET NAMES GB2312"
' stmt=SET NAMES GB2312
' 這句是設置資料庫編碼方式
' 中文操作系統需要設置成 GB2312
' 這樣中文才不會有問題
' 版本要求 mysql 4.1+
' 連接資料庫
cn.Open strCn
' 設置該屬性, 使 recordcount 和 absolutepage 屬性可用
cn.CursorLocation = adUseClient
' 訪問表users
sql = "select * from users"
rs.Open sql, cn
MsgBox rs.RecordCount
⑸ 如何用vb語句連接SQL資料庫
可以參考下邊自己稍作修改即可:
Sub Main()
On Error GoTo On_error
'frmWelcome.Show
Set con = New ADODB.Connection
con.ConnectionString = ("Provider=SQLOLEDB;User ID=sa;PWD=;Initial Catalog=human;Data Source=.")
con.Open
con.CommandTimeout = 20
Load frmLogin
frmLogin.Show vbModal
Exit Sub
On_error:
If Err.Number = -2147467259 Or Err.Number = -2147217900 Then
Unload frmWelcome
MsgBox "檢查到 SQL Server 未安裝或軟體所需資料庫未安裝..." & vbCrLf & "正在進一步檢查 SQL Server 的安裝情況,若已啟動則開始安裝資料庫... ", vbInformation + vbOKOnly, "系統提示"
Shell (App.Path & "\Installdb.exe")
End
Else
MsgBox Err.Number & Err.Description, vbInformation + vbOKOnly, "系統提示"
End
End If
End Sub
⑹ vb如何連接sql資料庫
1、打開代碼窗口,添加引用:Imports System.Data.SqlClient。
⑺ 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控制項,方便!
⑻ VB6.0 如何連接SQL 資料庫
你在SQL SERVER中新建一個資料庫,然後將這個資料庫生成腳本文件,根據情況修改後轉存為MASTER下的一個存儲過程。至於資料庫名和數據文件路徑可以做成參數傳入,然後在VB中用連到MASTER後執行這個存儲過程。
用VB與建立的SQL資料庫連接
1.使用ODBC DSN連接字元串
DSN=mySystemDSN;Uid=myUsername;Pwd=myPassword
----------------------------------------------
2.使用無ODBC DSN的連接字元串
(1)標准安全性
Driver={SQL Server};Server=MyServerName;DataBase=myDatabaseName; _
Uid=myUsername;Pwd=myPassword
------------------------------------------------
(2)信任連接(分兩種)
1)連接字元串1
Driver={SQL Server};Server=MyServerName;DataBase=myDatabaseName;Uid=;Pwd=;
2)連接字元串2
Driver={SQL Server};Server=MyServerName;DataBase=myDatabaseName;Trusted_Connection=yes
---------------------------------------------------------------------------
(3)連接本地SQL SERVER
Driver={SQL Server};Server=(local);DataBase=myDatabaseName; _
Uid=myUsername;Pwd=myPassword
-------------------------------------------------------------
(4)連接遠程SQL SERVER
Driver={SQL Server};Server=xxx.xxx.xxx.xxx; _
Address=xxx.xxx.xxx.xxx,1433; _
Network=DBMMSOCN;DataBase=myDatabaseName; _
Uid=myUsername;Pwd=myPassword
-------------------------------------------------------
3.使用OLEDB PROVIDER FOR SQL SERVER的連接字元串
(1)標准安全性
Provider=SQLOLEDB.1; _
Password=myPassword; _
User ID=myUsername; _
Initial Catalog=myDatabaseName; _
Data Source=MyServerName
-------------------------------------------
(2)信任連接
Provider=SQLOLEDB.1; _
Initial Catalog=myDatabaseName; _
Data Source=MyServerName; _
Integrated Security=SSPI
--------------------------------------
(3)連接到命名實例
Provider=SQLOLEDB.1; _
Initial Catalog=myDatabaseName; _
Data Source=myServerName\myInstanceName; _
Password=myPassword; _
User ID=myUsername
--------------------------------------
(4)連接到本地SQL SERVER
Provider=SQLOLEDB.1; _
Password=myPassword; _
User ID=myUsername; _
Initial Catalog=myDatabaseName; _
Data Source=(local)
-----------------------------------------
(5)連接到遠程SQL SERVER
Provider=SQLOLEDB.1; _
Netwprk Library=DBMMSOCN; _
Data Source=xxx.xxx.xxx.xxx,1433; _
Password=myPassword; _
User ID=myUsername; _
Initial Catalog=myDatabaseName;
⑼ VB如何連接網路資料庫
在工程里找到Microsoft ADO Data Control控制項,拖到窗體上,事件中這么寫:
Private Sub Coammand1_Click()
Adodc1.connectionstring="Driver={SQL Server};Server=伺服器IP;Uid=用戶名;Pwd=密碼;DataBse=資料庫名"
Adodc1.RecordSource="SELECT * FROM 表名 WHERE 條件"
Adodc1.Refrsh
End Sub
要進行數據操作就這樣引用:
Adodc1.RecordSet.Fields("欄位名")這就是操作數據欄位
把Adodc1綁定到數據控制項那就是綁定數據源
⑽ 在vb中要怎麼與資料庫連接呢
Dim r As New Recordset
Set com = New ADODB.Connection
com.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\data\users.mdb;Persist Security Info=False"
Set r = New ADODB.Recordset
r.Open "select * from 表格名稱 ", com, 1, 3
If Text1.Text = "" Then
MsgBox "請輸入賬號!", vbOKOnly + vbExclamation, "警告"
Text1.SetFocus
Else
If Text2.Text = "" Then
MsgBox "請輸入密碼!", vbOKOnly + vbExclamation, "警告"
Text2.SetFocus
Else
r.Find "賬號='" & Text1.Text & "'"
If r.EOF = True Then
MsgBox "賬號錯誤!", vbOKOnly + vbExclamation, "警告"
Text1.SetFocus
Else
If r.Fields!密碼 = Text2 Then
MsgBox "登陸成功!"
Form6.Show
Unload Me
Else
MsgBox "密碼錯誤!", vbOKOnly + vbExclamation, "警告"
Text2.SetFocus
End If
End If
End If