首先在項目的VB.NET界面,使用菜單【項目】--【添加引用】--【COM】
創(chuàng)新互聯(lián)長期為成百上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為新邱企業(yè)提供專業(yè)的成都做網(wǎng)站、成都網(wǎng)站設(shè)計、成都外貿(mào)網(wǎng)站建設(shè),新邱網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
選擇 ?Microsoft ADO Ext. 2.x for DDL and Security
然后單擊【確定】,完成引用。
完整代碼如下:
Imports?ADOX
Public?Class?Form1
Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click
'創(chuàng)建空的access數(shù)據(jù)庫文件--數(shù)據(jù)庫文件.mdb,密碼為123
Dim?Mycat?As?Catalog?=?New?Catalog()
Mycat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Jet?OLEDB:Engine?Type=5;Data?Source=?數(shù)據(jù)庫文件.mdb;Jet?OLEDB:Database?Password=123")
'以下代碼創(chuàng)建一個名為“實驗數(shù)據(jù)表”
Dim?MyTable?As?ADOX.Table?=?New?ADOX.Table?????????'定義新表
MyTable.Name?=?"實驗數(shù)據(jù)表"????'表命名
'給表“實驗數(shù)據(jù)表”?創(chuàng)建一個字符串字段,字段名“姓名”
MyTable.Columns.Append("姓名",?,?ADOX.DataTypeEnum.adWChar)
'給表“實驗數(shù)據(jù)表”?創(chuàng)建一個整數(shù)字段,字段名“學(xué)號”
MyTable.Columns.Append("學(xué)號",?ADOX.DataTypeEnum.adInteger)????'追加一個數(shù)字型字段
'給字段“學(xué)號”創(chuàng)建一個主鍵“PimaryKey_Field”????????
MyTable.Keys.Append("學(xué)號",?ADOX.KeyTypeEnum.adKeyPrimary,?"學(xué)號")
Mycat.Tables.Append(MyTable)?'把所有的新字段追加到表
MyTable?=?Nothing
Mycat?=?Nothing
End?Sub
End?Class
Option?Explicit
'修改表名要引用.Microsoft?ADO?Ext.?2.X?for?DDL?and?Security
Private?Sub?Command22_Click()
Dim?db?As?New?ADODB.Connection
db.ConnectionString?=?"provider=microsoft.jet.oledb.4.0;"??"data?source="??App.Path??"\dev.mdb"
db.Open
RenameTableName?db,?"oldTableName",?"newTableName"
End?Sub
'RenameTableName的返回值函義???-1表示出錯.??0表示沒有存在要修改的表.???1表示成功
Public?Function?RenameTableName(DatabseConnectionObject?As?ADODB.Connection,?strOldName?As?String,?strNewName?As?String)?As?Integer
On?Error?GoTo?acd
Dim?tbl?As?ADOX.Table,?cat?As?New?ADOX.Catalog
Set?cat.ActiveConnection?=?DatabseConnectionObject??????????????'設(shè)置目錄的鏈接
RenameTableName?=?0
For?Each?tbl?In?cat.Tables
If?LCase(tbl.Name)?=?LCase(strOldName)?Then
tbl.Name?=?strNewName?????????'重命名表的名稱
RenameTableName?=?1
End?If
Next
Exit?Function
acd:
RenameTableName?=?-1
End?Function
參考:
我的需求就是先填寫好表和表中字段的名稱,然后點擊一個按鈕,就在指定的路徑生成一個ACCESS數(shù)據(jù)庫。而不是事先手動創(chuàng)建。 請知道的各位附上完整代碼,本人剛接觸VB.NET,有些東西還不是很了解。謝謝。
首先在項目的VB.NET界面,使用菜單【項目】--【添加引用】--【COM】
選擇 ?Microsoft ADO Ext. 2.x for DDL and Security
然后單擊【確定】,完成引用。
完整代碼如下:
Imports?ADOX
Public?Class?Form1
Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click
'創(chuàng)建空的access數(shù)據(jù)庫文件--數(shù)據(jù)庫文件.mdb,密碼為123
Dim?Mycat?As?Catalog?=?New?Catalog()
Mycat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Jet?OLEDB:Engine?Type=5;Data?Source=?數(shù)據(jù)庫文件.mdb;Jet?OLEDB:Database?Password=123")
'以下代碼創(chuàng)建一個名為“實驗數(shù)據(jù)表”
Dim?MyTable?As?ADOX.Table?=?New?ADOX.Table?????????'定義新表
MyTable.Name?=?"實驗數(shù)據(jù)表"????'表命名
'給表“實驗數(shù)據(jù)表”?創(chuàng)建一個字符串字段,字段名“姓名”
MyTable.Columns.Append("姓名",?,?ADOX.DataTypeEnum.adWChar)
'給表“實驗數(shù)據(jù)表”?創(chuàng)建一個整數(shù)字段,字段名“學(xué)號”
MyTable.Columns.Append("學(xué)號",?ADOX.DataTypeEnum.adInteger)????'追加一個數(shù)字型字段
'給字段“學(xué)號”創(chuàng)建一個主鍵“PimaryKey_Field”????????
MyTable.Keys.Append("學(xué)號",?ADOX.KeyTypeEnum.adKeyPrimary,?"學(xué)號")
Mycat.Tables.Append(MyTable)?'把所有的新字段追加到表
MyTable?=?Nothing
Mycat?=?Nothing
End?Sub
End?Class
'修改表名要引用.Microsoft ADO Ext. 2.X for DDL and Security
Private Sub Command1_Click()
Dim db As New ADODB.Connection
db.ConnectionString = "provider=microsoft.jet.oledb.4.0;" "data source=" App.Path "\database.mdb"
db.Open
RenameTableName db, "oldTableName", "newTableName"
End Sub
'RenameTableName的返回值-1表示出錯.
' 0表示沒有存在要修改的表.
'1 表示成功
Public Function RenameTableName(DatabseConnectionObject As ADODB.Connection, strOldName As String, strNewName As String) As Integer
On Error GoTo acd
Dim tbl As ADOX.Table, cat As New ADOX.Catalog
Set cat.ActiveConnection = DatabseConnectionObject '設(shè)置目錄的鏈接
RenameTableName = 0
For Each tbl In cat.Tables
If LCase(tbl.Name) = LCase(strOldName) Then
tbl.Name = strNewName '重命名表的名稱
RenameTableName = 1
End If
Next
Exit Function
acd:
RenameTableName = -1
End Function
一種程序?qū)ο?,用于表示用戶?shù)據(jù)庫中的數(shù)據(jù)結(jié)構(gòu)和所包含的數(shù)據(jù)。
在Microsoft Visual Basic編輯器中,可以使用ADO對象以及ADO的附加組件(稱為Microsoft ADO Extensions for DLL and Security(ADOX))來創(chuàng)建或修改表和查詢、檢驗數(shù)據(jù)庫、或者訪問外部數(shù)據(jù)源。還可在代碼中使用ADO來操作數(shù)據(jù)庫中的數(shù)據(jù)。
ADO?(ActiveX Data Objects,ActiveX數(shù)據(jù)對象)是Microsoft提出的應(yīng)用程序接口(API)用以實現(xiàn)訪問關(guān)系或非關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)。
例如,如果希望編寫應(yīng)用程序從DB2或Oracle數(shù)據(jù)庫中向網(wǎng)頁提供數(shù)據(jù),可以將ADO程序包括在作為活動服務(wù)器頁(ASP)的HTML文件中。當(dāng)用戶從網(wǎng)站請求網(wǎng)頁時,返回的網(wǎng)頁也包括了數(shù)據(jù)中的相應(yīng)數(shù)據(jù),這些是由于使用了ADO代碼的結(jié)果。
擴展資料:
ADO接口簡介
1、_ConnectionPtr接口
返回一個記錄集或一個空指針。通常使用它來創(chuàng)建一個數(shù)據(jù)連接或執(zhí)行一條不返回任何結(jié)果的SQL語句,如一個存儲過程。
2、_CommandPtr接口
返回一個記錄集。它提供了一種簡單的方法來執(zhí)行返回記錄集的存儲過程和SQL語句。
3、_RecordsetPtr接口
是一個記錄集對象。與以上兩種對象相比,它對記錄集提供了更多的控制功能,如記錄鎖定,游標(biāo)控制等。
參考資料來源:百度百科-ActiveX Data Objects