vb.net新建數(shù)據(jù)庫(kù) vba創(chuàng)建數(shù)據(jù)庫(kù)

VB.NET如何生成ACCESS數(shù)據(jù)庫(kù)?并生成表。 VB.NET

我的需求就是先填寫好表和表中字段的名稱,然后點(diǎn)擊一個(gè)按鈕,就在指定的路徑生成一個(gè)ACCESS數(shù)據(jù)庫(kù)。而不是事先手動(dòng)創(chuàng)建。 請(qǐng)知道的各位附上完整代碼,本人剛接觸VB.NET,有些東西還不是很了解。謝謝。

站在用戶的角度思考問題,與客戶深入溝通,找到婺城網(wǎng)站設(shè)計(jì)與婺城網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋婺城地區(qū)。

VB.NET通過調(diào)用模塊怎么建立access數(shù)據(jù)庫(kù)?

oledb的使用網(wǎng)上的確很多.\x0d\x0a如果只是查詢. 寫入. 刪除,我們常用的就是\x0d\x0aOleDbConnection '用于寫數(shù)據(jù)庫(kù)的連接\x0d\x0aOleDbCommand '用于數(shù)據(jù)的操作 接收SQL語(yǔ)句 并執(zhí)行\(zhòng)x0d\x0aOleDbDataReader '查詢了,我們就用這個(gè)類來讀取查詢的對(duì)象\x0d\x0a1).OleDbConnection \x0d\x0a dim conn as new OleDbConnection("Provider = Microsoft.Jet.OLEDB.4.0;Data Source =數(shù)據(jù)庫(kù)的路徑")'連接字符串一般就這樣 \x0d\x0a 查詢前在打開 \x0d\x0a conn.open\x0d\x0a 2).OleDbCommand \x0d\x0a dim cmd as new OleDbCommand ("SQL語(yǔ)句",conn)'SQL語(yǔ)句決定了你是查詢寫入還是更新刪除\x0d\x0a '''\x0d\x0a如果是查詢,你還要用到OleDbDataReader \x0d\x0a 這個(gè)是不用新建的不能用New \x0d\x0adim rd as OleDbDataReader=cmd.ExecuteReader'cmd.ExecuteReader 方法就是讀取查詢的內(nèi)容\x0d\x0acmd.ExecuteNonQuery用于執(zhí)行操作 返回變動(dòng)的條數(shù) ,一般用于 添加 刪除 更新 等其它操作\x0d\x0a \x0d\x0a其實(shí)就這些了,就是要學(xué)點(diǎn)SQL語(yǔ)句就行了.\x0d\x0a標(biāo)準(zhǔn)執(zhí)行過程就是\x0d\x0a Dim conn As New OleDbConnection("連接字符串")\x0d\x0a conn.Open()\x0d\x0a Dim cmd As New OleDbCommand("SQL語(yǔ)句", conn)\x0d\x0a '如果是寫入 更新 刪除 則\x0d\x0a cmd.ExecuteNonQuery()\x0d\x0a 否則\x0d\x0a Dim rd As OleDbDataReader = cmd.ExecuteReader\x0d\x0a \x0d\x0a If rd.Read Then\x0d\x0a Dim d As Object = rd.Item("字段名")\x0d\x0a End If\x0d\x0a 結(jié)束如果\x0d\x0a rd.Close()\x0d\x0a cmd.Dispose()\x0d\x0a conn.Close()\x0d\x0a \x0d\x0a上面要有 Imports System.Data.OleDb

vb.net怎么動(dòng)態(tài)創(chuàng)建access數(shù)據(jù)庫(kù)和表

追問: 只有那個(gè)辦法? 回答: 是,這跟SQL Server不同,ACCESS是獨(dú)立文件的,而且它能支持的SQL語(yǔ)句有限,一般是使用ACCESS來創(chuàng)建,若要?jiǎng)討B(tài)創(chuàng)建,只能用ADO了,但Sql Server就不同了,它可以執(zhí)行復(fù)雜的SQL語(yǔ)句,相對(duì)來說,動(dòng)態(tài)創(chuàng)建數(shù)據(jù)庫(kù)和表,要比ACCESS方便。 追問: 創(chuàng)建表的話能用SQL語(yǔ)句了嗎? 回答: 沒試過,應(yīng)該不行 追問: 那你能告訴我下怎么創(chuàng)建表嗎?創(chuàng)建數(shù)據(jù)庫(kù)我會(huì)了 回答: 可以使用DAO對(duì)象來操作,注意是DAO對(duì)象,不是ADO對(duì)象! 追問: 能不能詳細(xì)說下過程呢?創(chuàng)建表的過程 回答: 創(chuàng)建表的過程用DAO.net和ADO.net都可以,創(chuàng)建數(shù)據(jù)庫(kù)可以用DAO對(duì)象,既然你已經(jīng)可以創(chuàng)建數(shù)據(jù)庫(kù),那么創(chuàng)建表只要先連接到這個(gè)數(shù)據(jù)庫(kù),然后用create table語(yǔ)句來執(zhí)行就行了,可以使用OledbConnection先連接這個(gè)庫(kù),接著用OledbCommand對(duì)象的ExecuteNonQuery來執(zhí)行create table語(yǔ)句即可。

vb.net 創(chuàng)建ACCESS數(shù)據(jù)庫(kù)。大神給點(diǎn)代碼,學(xué)習(xí)學(xué)習(xí)。

這也是我研究很長(zhǎng)時(shí)間的成果,差不多分得給我吧。\(^o^)/~

Imports System.Data

Public Class Form1

Public dt As New DataTable

Public dr As DataRow

'內(nèi)存表格及界面表格初始化,分類列表框初始化

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Me.SetDesktopBounds(283, 84, 800, 600)

With dt

.Clear()

.Columns.Add("ID")

.Columns.Add("故障描述")

.Columns.Add("原因分析")

.Columns.Add("排除辦法")

.Columns.Add("備注")

.Columns.Add("時(shí)間")

End With

With Me.DataGridView1

.DataSource = dt

.Columns(0).Width = 30

.Columns(1).Width = 120

.Columns(2).Width = 150

.Columns(3).Width = 190

.Columns(4).Width = 65

.Columns(5).Width = 150

End With

With TS_ComboBox1

.Items.Clear()

.Items.Add("電氣")

.Items.Add("機(jī)械")

.Items.Add("操作")

End With

End Sub

'將表格中的數(shù)據(jù)顯示到文本框中

Private Sub DataGridView1_CellMouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles DataGridView1.CellMouseClick

If Not IsDBNull(DataGridView1.CurrentRow.Cells(1).Value) Then

RichTextBox1.Text = DataGridView1.CurrentRow.Cells(1).Value

End If

If Not IsDBNull(DataGridView1.CurrentRow.Cells(2).Value) Then

RichTextBox2.Text = DataGridView1.CurrentRow.Cells(2).Value

End If

If Not IsDBNull(DataGridView1.CurrentRow.Cells(3).Value) Then

RichTextBox3.Text = DataGridView1.CurrentRow.Cells(3).Value

End If

If Not IsDBNull(DataGridView1.CurrentRow.Cells(4).Value) Then

RichTextBox4.Text = DataGridView1.CurrentRow.Cells(4).Value

End If

End Sub

Private Sub MenuItem5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem5.Click

Dim str

str = MsgBox("您確定要退出系統(tǒng)嗎?", vbOKCancel + vbQuestion, "系統(tǒng)提示")

If str = vbOK Then

End

End If

End Sub

'查看所有記錄

Private Sub MenuItem2_1_1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem2_1_1.Click

Dim strsql

Dim rs As OleDb.OleDbDataReader

strsql = "select * from Fault_Analyse order by ID"

transactsql(strsql)

rs = oledbcmd.ExecuteReader

dt.Clear()

Do Until Not rs.Read() '在這里作為條件的同時(shí),也執(zhí)行了該語(yǔ)句

dr = dt.NewRow

dr.Item(0) = rs.Item(0)

dr.Item(1) = rs.Item(2)

dr.Item(2) = rs.Item(3)

dr.Item(3) = rs.Item(4)

dr.Item(4) = rs.Item(5)

dr.Item(5) = rs.Item(1)

dt.Rows.Add(dr)

Loop

DataGridView1.Refresh()

oledbcmd.Dispose() '釋放后不能讀值

dbconnection.Close()

dbconnection.Dispose()

End Sub

'工具欄隱藏與顯示操作

Private Sub MenuItem3_1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem3_1.Click

If Me.MenuItem3_1.Checked = True Then

Me.MenuItem3_1.Checked = False

Else

Me.MenuItem3_1.Checked = True

End If

If Me.MenuItem3_1.Checked = True Then

ToolStrip1.Visible = True

Else

ToolStrip1.Visible = False

End If

End Sub

'往Access數(shù)據(jù)庫(kù)中插入新行

Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click

Dim strsql As Object

Dim rs As OleDb.OleDbDataReader

Dim datetime As Date

Dim describe_fault, analyse_reason, solution, remarks As String

Dim class_g1, class_g2 As String

Dim i, j As Integer

i = 0 '初始化

describe_fault = RichTextBox1.Text

analyse_reason = RichTextBox2.Text

solution = RichTextBox3.Text

remarks = RichTextBox4.Text

class_g1 = TS_ComboBox1.Text

class_g2 = TS_ComboBox2.Text

datetime = Now

'注意格式

strsql = "select ID from Fault_Analyse" 'where ID =" + ID + ""

transactsql(strsql)

rs = oledbcmd.ExecuteReader

Do Until Not rs.Read() '獲取記錄的行數(shù)

i = i + 1

Loop

If i = 0 Then i = 1

For j = 1 To i '查詢表中是否有ID為j的記錄,沒有記錄則定義新行j

strsql = "select ID from Fault_Analyse where ID =" + CStr(j) + ""

transactsql(strsql)

rs = oledbcmd.ExecuteReader

If Not rs.Read() Then

Num1.Value = CInt(j)

Exit For

End If

Next

If TS_ComboBox1.Text "" And TS_ComboBox2.Text "" Then

strsql = "Insert into Fault_Analyse values('" + CStr(j) + "','" + datetime + " ','" _

+ describe_fault + " ','" + analyse_reason + " ','" + solution + " ','" _

+ remarks + "','" + class_g1 + "','" + class_g2 + "','0')"

transactsql(strsql)

oledbcmd.Dispose() '釋放后不能讀值

dbconnection.Close()

dbconnection.Dispose()

Else

MsgBox("請(qǐng)為輸入的內(nèi)容分類。", vbOK + vbInformation, "系統(tǒng)提示")

End If

End Sub

'從數(shù)據(jù)庫(kù)中刪除選中行

Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton3.Click

Dim strsql

Dim str

str = MsgBox("確定要?jiǎng)h除- " + CStr(RichTextBox1.Text) + " -的內(nèi)容嗎?", vbOKCancel + vbQuestion, "系統(tǒng)提示")

If str = vbOK Then

strsql = "delete from Fault_Analyse where describe_fault='" + CStr(RichTextBox1.Text) + "'"

transactsql(strsql)

oledbcmd.Dispose() '釋放后不能讀值

dbconnection.Close()

dbconnection.Dispose()

End If

End Sub

'按照分類查詢數(shù)據(jù)庫(kù)中指定內(nèi)容

Private Sub ToolStripButton4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton4.Click

Dim strsql

Dim rs As OleDb.OleDbDataReader

If TS_ComboBox1.Text = "" Or TS_ComboBox2.Text = "" Then

MsgBox("請(qǐng)選擇您要查詢的類別", vbOKCancel + vbInformation, "系統(tǒng)提示")

Else

strsql = "select * from Fault_Analyse where class_g1='" _

+ TS_ComboBox1.Text + "'and class_g2='" + TS_ComboBox2.Text + "' order by ID"

transactsql(strsql)

rs = oledbcmd.ExecuteReader

dt.Clear()

Do Until Not rs.Read() '在這里作為條件的同時(shí),也執(zhí)行了該語(yǔ)句

dr = dt.NewRow

dr.Item(0) = rs.Item(0)

dr.Item(1) = rs.Item(2)

dr.Item(2) = rs.Item(3)

dr.Item(3) = rs.Item(4)

dr.Item(4) = rs.Item(5)

dr.Item(5) = rs.Item(1)

dt.Rows.Add(dr)

Loop

DataGridView1.Refresh()

oledbcmd.Dispose() '釋放后不能讀值

dbconnection.Close()

dbconnection.Dispose()

End If

End Sub

'界面文本框內(nèi)容清空

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim str

str = MsgBox("確定要清空文本框中內(nèi)容嗎?", vbOKCancel + vbQuestion, "系統(tǒng)提示")

If str = vbOK Then

RichTextBox1.Text = " "

RichTextBox2.Text = " "

RichTextBox3.Text = " "

RichTextBox4.Text = " "

End If

End Sub

'分類選擇列表框的定義

Private Sub TS_ComboBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TS_ComboBox1.TextChanged

TS_ComboBox2.Text = ""

If TS_ComboBox1.Text = "電氣" Then

With TS_ComboBox2.Items

.Clear()

.Add("程序")

.Add("設(shè)備")

.Add("方案")

.Add("工藝")

.Add("其它")

End With

ElseIf TS_ComboBox1.Text = "機(jī)械" Then

With TS_ComboBox2.Items

.Clear()

.Add("設(shè)計(jì)")

.Add("質(zhì)量")

.Add("故障")

.Add("其它")

End With

ElseIf TS_ComboBox2.Text = "操作" Then

With TS_ComboBox2.Items

.Add("熟練度")

.Add("方案")

.Add("其它")

End With

End If

End Sub

'工具欄的顯示與隱藏

Private Sub ToolStripButton5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton5.Click

MenuItem3_1.Checked = False

ToolStrip1.Visible = False

End Sub

End Class

當(dāng)前標(biāo)題:vb.net新建數(shù)據(jù)庫(kù) vba創(chuàng)建數(shù)據(jù)庫(kù)
轉(zhuǎn)載來于:http://muchs.cn/article42/doeddhc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營(yíng)銷、微信公眾號(hào)網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化