VB.NET 创建access数据库,在程序不关闭情况下打开,出现提示

wcf_01 wcf_01 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我引用的是 Microsoft Ado Ext.6.0 for DDL and Security和adodb
在创建完access后,程序不关闭的情况下打开这个数据库提示

you attempted to open a database that is already opened exclusively by user 'admin' on machine 'mypc ',try again when the database is available

图片上传不了,vs2010,access 2007


Imports ADOX

Public Class Form
Private Sub btnCreatAccess_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCreatAccess.Click
Dim AccessName As String
Dim AccessPath As String
Dim TableName As String
Dim Field() As String
AccessName = TextBox1.Text.ToString
AccessPath = Application.StartupPath
TableName = "成绩表"
Field = {"d", "f", "g", "h"}

CreatAccess(AccessName, AccessPath, TableName, Field)

End Sub

Public Function CreatAccess(ByVal AccessName As String, ByVal AccessPath As String, ByVal TableName As String, ByVal Field() As String) As Boolean
Try
Dim CAT As Catalog = New ADOX.Catalog

CAT.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & AccessPath & "\" & AccessName & ".mdb")

Dim objTable As ADOX.Table = New ADOX.Table

'objTable.ParentCatalog = CAT
objTable.Name = TableName
'set autoID and primary key
Dim col As New ADOX.Column
col.ParentCatalog = CAT
col.Name = "ID"
col.Type = DataTypeEnum.adInteger
col.Properties("AutoIncrement").Value = True
col.Properties("Jet OLEDB:Allow Zero Length").Value = True
objTable.Columns.Append(col, DataTypeEnum.adInteger, 0)
objTable.Keys.Append("Primary", KeyTypeEnum.adKeyPrimary, "ID")
'creat field and updata it
Dim i As Integer
Dim num As Integer
num = Field.GetUpperBound(0)
For i = 0 To num
objTable.Columns(i).ParentCatalog = CAT
objTable.Columns.Append(Field(i), DataTypeEnum.adWChar, 0)
objTable.Columns(i).Properties("Jet OLEDB:Allow Zero Length").Value = True
Next

CAT.Tables.Append(objTable)
objTable = Nothing
CAT = Nothing

'Dim MyConnection As ADODB.Connection = New ADODB.Connection
'MyConnection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & AccessPath & "\" & AccessName & ".mdb"
'MyConnection.Open()

'MyConnection.Close()
'MyConnection = Nothing

Return True

Catch ex As Exception

MessageBox.Show(ex.Message, "Alarm", MessageBoxButtons.OK, MessageBoxIcon.Error)
Return False

End Try

End Function

End Class
...全文

相关推荐

VB.NET+Access数据库实现数据的修改添加删除及数据库运算

VB.NET+Access数据库实现数据的修改添加删除及数据库运算,帮助初学用户快速入门数据库开发

weichch123

使用VB.Net操作Access数据库:示例与实践

Access数据库是由Microsoft开发的轻量级数据库管理系统,它是基于桌面的文件服务器数据库。它广泛应用于小型项目和桌面应用中,特别是对于初学者来说,Access数据库由于其易用性和低成本而颇具吸引力。

笨爪

VB.NET操作Access数据库实践案例

在现代IT开发领域,数据库操作是不可或缺的一部分。对于VB.net开发者而言,了解如何操作Access数据库不仅扩展了工具箱,还能在小型或桌面应用程序中实现数据持久化。本章将简要概述VB.net操作Access数据库的概念、适用场景及其重要性。

你这人真狗

VB.NET操作Access数据库完整实例与实战教程

Access数据库是微软Office套件中的关系型数据库管理系统(RDBMS),专为中小型应用设计,适用于单机或局域网环境下的数据管理。其最大优势在于集成化的开发环境,支持可视化表单、报表和查询设计,极大降低了非专业开发者的使用门槛。' 示例:通过VBA快速连接Access数据库该代码展示了Access与COM组件的良好兼容性,便于在VB.NET或VBA中实现快速数据交互,为后续ADO.NET操作奠定基础。ADO.NET 并非单一类库,而是一套结构清晰、职责分明的数据访问体系。

焦虑中

VB.net操作Access数据库实例

VB.net操作Access数据库实例

Artemisis
评论 10
收藏 已收藏
分享
返回顶部
wcf_01
VB 16,718 成员 110,520 内容