當前位置:首頁 » 操作系統 » 資料庫vbnet

資料庫vbnet

發布時間: 2023-03-13 02:49:29

1. vb.net 怎麼操作資料庫

如果樓主熟悉VB6,可以直接在項目中添加ADODB的Com引用,這樣你就可以像VB6那樣操作資料庫了!
另外
.NET
Framework中連接資料庫要用到ADO.NET。如果要操作Access資料庫,要用到System.Data.OleDb命名空間下的許多類。
比如按樓主所說,「我想在textbox1中顯示表一中【一些數據】欄位下的第一個內容」:
'首先導入命名空間
Imports
System.Data
Imports
System.Data.OleDb
'然後在某一個事件處理程序中寫:
Dim
conn
As
New
OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data
Source=資料庫.accdb;Jet
OLEDB:Database
Password=MyDbPassword")
Dim
command
As
New
OleDbCommand("Select
*
From
數據表",
conn)
conn.Open()
'打開資料庫連接
Dim
reader
As
OleDbDataReader
=
command.ExecuteReader()
'執行sql語句,返回OleDbDataReader
對象
Do
While
reader.Read()
'讀取一條數據
textbox1.Text
+=
reader("一些數據")
&
VbCrLf
Loop
reader.Close()
'關閉OleDbDataReader
conn.Close()
'關閉連接

2. vb.net資料庫操作

參考一下下面這段代碼就可以了。

Imports System.Data
'引入資料庫操作類命名空間
Imports System.Data.OleDb
'引入ADO.NET操作命名空間
Public Class FrmModifystInfo
Inherits System.Windows.Forms.Form
Public ADOcmd As OleDbDataAdapter
Public ds As DataSet = New DataSet()
'建立DataSet對象
Public mytable As Data.DataTable
'建立表單對象
Public myrow As Data.DataRow
'建立數據行對象
Public rownumber As Integer
'定義一個整型變數來存放當前行數
Public SearchSQL As String
Public cmd As OleDbCommandBuilder
'======================================================
#Region " Windows 窗體設計器生成的代碼 "

#End Region
'======================================================
Private Sub FrmModifystInfo_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
'窗體的載入
TxtSID.Enabled = False
TxtName.Enabled = False
ComboSex.Enabled = False
TxtBornDate.Enabled = False
TxtClassno.Enabled = False
TxtRuDate.Enabled = False
TxtTel.Enabled = False
TxtAddress.Enabled = False
TxtComment.Enabled = False '設置信息為只讀
Dim tablename As String = "student_Info "
SearchSQL = "select * from student_Info "
ExecuteSQL(SearchSQL, tablename) '打開資料庫
ShowData() '顯示記錄
End Sub

Private Sub ShowData()
'在窗口中的textbox中顯示數據
myrow = mytable.Rows.Item(rownumber)
TxtSID.Text = myrow.Item(0).ToString
TxtName.Text = myrow.Item(1).ToString
ComboSex.Text = myrow.Item(2).ToString
TxtBornDate.Text = Format(myrow.Item(3), "yyyy-MM-dd ")
TxtClassno.Text = myrow.Item(4).ToString
TxtTel.Text = myrow.Item(5).ToString
TxtRuDate.Text = Format(CDate(myrow.Item(6)), "yyyy-MM-dd ")
TxtAddress.Text = myrow.Item(7).ToString
TxtComment.Text = myrow.Item(8).ToString
End Sub

Private Sub BtFirst_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtFirst.Click
'指向第一條數據
rownumber = 0
ShowData()
End Sub

Private Sub BtPrev_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtPrev.Click
'指向上一條數據
BtNext.Enabled = True
rownumber = rownumber - 1
If rownumber < 0 Then
rownumber = 0 '如果到達記錄的首部,行號設為零
BtPrev.Enabled = False
End If
ShowData()
End Sub

Private Sub BtNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtNext.Click
'指向上一條數據
BtPrev.Enabled = True
rownumber = rownumber + 1
If rownumber > mytable.Rows.Count - 1 Then
rownumber = mytable.Rows.Count - 1 '判斷是否到達最後一條數據
BtNext.Enabled = False
End If
ShowData()
End Sub

Private Sub BtLast_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtLast.Click
'指向最後一條數據
rownumber = mytable.Rows.Count - 1
ShowData()
End Sub

Private Sub BtDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtDelete.Click
mytable.Rows.Item(rownumber).Delete() '刪除記錄
If MsgBox( "確定要刪除改記錄嗎? ", MsgBoxStyle.OKCancel + vbExclamation, "警告 ") = MsgBoxResult.OK Then
cmd = New OleDbCommandBuilder(ADOcmd)
'使用自動生成的SQL語句
ADOcmd.Update(ds, "student_Info ")
BtNext.PerformClick()
End If
End Sub

Private Sub BtModify_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtModify.Click
TxtSID.Enabled = False '關鍵欄位只讀
TxtName.Enabled = True '可讀寫
ComboSex.Enabled = True
TxtBornDate.Enabled = True
TxtClassno.Enabled = True
TxtRuDate.Enabled = True
TxtTel.Enabled = True
TxtAddress.Enabled = True
TxtComment.Enabled = True
End Sub

Private Sub BtUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtUpdate.Click
If Not Testtxt(TxtName.Text) Then
MsgBox( "請輸入姓名! ", vbOKOnly + vbExclamation, "警告 ")
TxtName.Focus()
Exit Sub
End If
If Not Testtxt(ComboSex.Text) Then
MsgBox( "請選擇性別! ", vbOKOnly + vbExclamation, "警告 ")
ComboSex.Focus()
Exit Sub
End If
If Not Testtxt(TxtClassno.Text) Then
MsgBox( "請選擇班號! ", vbOKOnly + vbExclamation, "警告 ")
TxtClassno.Focus()
Exit Sub
End If

If Not Testtxt(TxtTel.Text) Then
MsgBox( "請輸入聯系電話! ", vbOKOnly + vbExclamation, "警告 ")
TxtTel.Focus()
Exit Sub
End If
If Not Testtxt(TxtAddress.Text) Then
MsgBox( "請輸入家庭住址! ", vbOKOnly + vbExclamation, "警告 ")
TxtAddress.Focus()
Exit Sub
End If
If Not IsNumeric(Trim(TxtSID.Text)) Then
MsgBox( "請輸入數字學號! ", vbOKOnly + vbExclamation, "警告 ")
Exit Sub
TxtSID.Focus()
End If
If Not IsDate(TxtBornDate.Text) Then
MsgBox( "出生時間應輸入日期格式(yyyy-mm-dd)! ", vbOKOnly + vbExclamation, "警告 ")
Exit Sub
TxtBornDate.Focus()
End If
If Not IsDate(TxtRuDate.Text) Then
MsgBox( "入校時間應輸入日期格式(yyyy-mm-dd)! ", vbOKOnly + vbExclamation, "警告 ")
TxtRuDate.Focus()
Exit Sub
End If
myrow.Item(0) = Trim(TxtSID.Text)
myrow.Item(1) = Trim(TxtName.Text)
myrow.Item(2) = Trim(ComboSex.Text)
myrow.Item(3) = Trim(TxtBornDate.Text)
myrow.Item(4) = Trim(TxtClassno.Text)
myrow.Item(5) = Trim(TxtTel.Text)
myrow.Item(6) = Trim(TxtRuDate.Text)
myrow.Item(7) = Trim(TxtAddress.Text)
myrow.Item(8) = Trim(TxtComment.Text)
mytable.GetChanges()
cmd = New OleDbCommandBuilder(ADOcmd)
'使用自動生成的SQL語句
ADOcmd.Update(ds, "student_Info ")
'對資料庫進行更新
MsgBox( "修改學籍信息成功! ", vbOKOnly + vbExclamation, "警告 ")
TxtName.Enabled = False
ComboSex.Enabled = False
TxtBornDate.Enabled = False
TxtClassno.Enabled = False
TxtRuDate.Enabled = False
TxtTel.Enabled = False
TxtAddress.Enabled = False
TxtComment.Enabled = False '重新設置信息為只讀
End Sub

Private Sub BtCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtCancel.Click
TxtSID.Enabled = False
TxtName.Enabled = False
ComboSex.Enabled = False
TxtBornDate.Enabled = False
TxtClassno.Enabled = False
TxtRuDate.Enabled = False
TxtTel.Enabled = False
TxtAddress.Enabled = False
TxtComment.Enabled = False
End Sub

Public Function ExecuteSQL(ByVal SQL As String, ByVal table As String)
Try
'建立ADODataSetCommand對象
'資料庫查詢函數
ADOcmd = New OleDbDataAdapter(SQL, "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\student.mdb ")
'建立ADODataSetCommand對象
ADOcmd.Fill(ds, table) '取得表單
mytable = ds.Tables.Item(0) '取得名為table的表
rownumber = 0 '設置為第一行
myrow = mytable.Rows.Item(rownumber)
'取得第一行數據
Catch
MsgBox(Err.Description)
End Try
End Function
End Class

3. VB.NET怎樣連接資料庫

Imports System.Data
Imports System.Data.SqlClient

Mole 連接資料庫
Public Server1 As String
Public DataBase1 As String
Public Function GetTable(ByVal sqlstr$) As DataTable
Dim SqlConn As SqlConnection = New SqlConnection("server=" & Server1 & ";database=" & DataBase1 & ";integrated security=true") '聲明這些SQL的類
Dim facDataAdapter As SqlDataAdapter = New SqlDataAdapter
Dim SqlComm As SqlCommand = New SqlCommand(sqlstr, SqlConn)
facDataAdapter.SelectCommand = SqlComm
Dim dt As DataTable = New DataTable
facDataAdapter.Fill(dt)
Return dt
End Function
End Mole

4. vb.net連接資料庫

1、 用The SQL Server .NET Data Provider連接資料庫

The SQL Server .NET Data Provider是利用SqlConnection類來連接SQL Server7.0或更高版本的資料庫,

SqlConnection類位於名稱空間System.Data.SqlClient下。

連接代碼:

Dim sqlConnection1 As SqlClient.SqlConnection

Dim strConnect As String=」data source=伺服器名;initial catalog=資料庫名;user id=sa;password=;」

sqlConnection1=New System.Data.SqlClient.SqlConnection(strConnect)

sqlConnection1.open 『打開資料庫

sqlConnection1.close 『關閉連接,釋放資源

2、 用The OLE DB .NET Data Provider連接資料庫

上面已經說過,利用The OLE DB .NET Data Provider可以訪問Access、Oracle和SQL Server等種數據

庫,那麼,它是怎樣訪問這些資料庫的呢?The OLE DB .NET Data Provider是通過位於名稱空間Sy

stem.Data.OleDb類庫下的OleDbConnection類來連接這三種不同類型的資料庫的。下面舉例說明:

1)連接SQL Server資料庫

Dim oleDbConnection1 As OleDb.OleDbConnection

Dim strConnect As Sting=」Provider=SQLOLEDB;Persist Security Info=False;Data Source=伺服器名;Initial Catalog=資料庫名;User ID=sa;Password=;」

oleDbConnection1=New System.Data.OleDb.OleDbConnection(strConnect)

2)連接Access資料庫

假設要連接的Access資料庫名為「Example.mdb」,存放在d:\Data\目錄下。

Dim oleDbConnection1 As OleDb.OleDbConnection

Dim strConnect As Sting=」Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Data\ Example.mdb」

oleDbConnection1= New System.Data.OleDb.OleDbConnection(strConnect)

3)連接Oracle資料庫

Dim oleDbConnection1 As OleDb.OleDbConnection

Dim strConnect As Sting=」Provider=MSDAORA;Data Source=伺服器名;User ID=用戶ID;Password=密碼;」

oleDbConnection1= New System.Data.OleDb.OleDbConnection(strConnect)

3、 用The ODBC .NET Data Provider連接資料庫

The ODBC .NET Data Provider連接資料庫是通過OdbcConnection類來實現的,這個類位於名稱空間

Microsoft.Data.Odbc下,而名稱空間Microsoft.Data.Odbc是封裝在Microsoft.Data.Odbc.dll文件下的。

由於篇幅有限,這里就只介紹連接Sql Server和Oracle資料庫的方法,其他資料庫的連接方法基本類

似,我就不再多講了。

1)連接Sql Server資料庫

Dim odbcDbConnetion1 As Microsoft.Data.OdbcConnection

Dim strConnect As Sting=」Driver={SQL Server};Server=伺服器名;Uid=sa;pwd=;Database= 資料庫名;」

odbcDbConnetion1=New Microsoft.Data.OdbcConnection(strConnect)

2)連接Oracle資料庫

Dim odbcDbConnetion1 As Microsoft.Data.OdbcConnection

Dim strConnect As Sting=」Driver={Microsoft ODBC for Oracle};Server=伺服器名;Uid=sa;pwd=;」

odbcDbConnetion1=New Microsoft.Data.OdbcConnection(strConnect)

四、總結

通過本文的介紹,讀者基本掌握了在Visual Basic.NET中用ADO.NET和ODBC.NET連接各種資料庫的方法

。以上三種驅動針對不同的資料庫,它們的性能方面也有很大的不同:The SQL Server .NET Data Provider

的效率最高;The OLE DB .NET Data Provider的效率比較底;The ODBC .NET Data Provider的效率最慢。

具體連接哪一種資料庫選用哪一種數據驅動要從工作效率方面來考慮。
以上回答你滿意么?

5. vb.net 寫資料庫

你這是向sql後台資料庫寫數據嗎?
sqldataadapter1.update 改須指定有效的updatecommand,我一直沒有看到
給你個例子你看吧:

'首先指定有效的UpdateCommand
sqlstr = "insert into Playlist(PlayName,PlayPath)values('" & TextBox4.Text.Trim & "','" & TextBox5.Text.Trim & "')"

Mole1.Mycommand.CommandText = sqlstr

'增加新一行(此行必須,要不不能與後台同步,並且後面調用update會出錯)
Mole1.MyDataSet.Tables("Music").Rows.Add()

Mole1.MyDataAdaPter.InsertCommand = Mole1.Mycommand
Mole1.MyDataAdaPter.Update(Mole1.MyDataSet, "Music")

MsgBox("增加數據成功!!")

6. vb.net如何連接遠程db2資料庫

如果要程序直接連接DB2資料庫,必須要有連接資料庫的驅動程序,連接的代碼,你可以參考如下(以前用C#寫的,你改成VB.NET即可,ODBC連接對象)

publicOdbcConnectionDb2Conn()
{
stringstr="DRIVER=IBMDB2ODBCDRIVER;UID=db2admin;PWD=db2admin;AUTHENTICATION=SERVER;PORT=50000;HOSTNAME=192.168.100.98;PROTOCOL=TCPIP;DATABASE=YCDATA";
OdbcConnectionConn=newOdbcConnection(str);
returnConn;
}

如果你是開發桌面程序而又不想在客戶端安裝資料庫的驅動程序,那麼你可以採用web網站(含webservice)或者remoting方式,只需要在服務端安裝驅動即可

熱點內容
編譯正確運行後沒有輸出就結束了 發布:2025-08-23 03:12:26 瀏覽:888
fanuc存儲卡 發布:2025-08-23 03:12:19 瀏覽:384
俠盜飛車安卓哪裡下 發布:2025-08-23 03:02:24 瀏覽:753
沈陽java培訓 發布:2025-08-23 02:56:03 瀏覽:972
安卓2千以下買什麼備用機好 發布:2025-08-23 02:54:38 瀏覽:144
ftp文件共享軟體 發布:2025-08-23 02:34:13 瀏覽:583
php圖片等比縮放 發布:2025-08-23 02:32:40 瀏覽:646
資料庫配置文件jsp 發布:2025-08-23 02:21:22 瀏覽:454
介面地址和伺服器地址是一個么 發布:2025-08-23 02:21:21 瀏覽:767
iphone的證書在哪個文件夾 發布:2025-08-23 02:21:13 瀏覽:540