C# ADOX读写Access
时间: 2023-09-08 10:13:08 浏览: 157
你可以使用C#中的ADOX(ActiveX Data Objects Extensibility Library)来读写Access数据库。X是一个COM库,提供了一组用于管理数据库架构的对象和方法。下面是一个简单的示例,演示如何使用ADOX来创建一个新的Access数据库,并在其中创建一个表并插入数据:
```csharp
using ADOX;
using ADODB;
// 创建新的Access数据库
Catalog catalog = new Catalog();
catalog.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\path\\to\\database.mdb;Jet OLEDB:Engine Type=5");
// 连接到已存在的Access数据库
//Catalog catalog = new Catalog();
//catalog.let_ActiveConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\path\\to\\database.mdb");
// 创建新的表
Table table = new Table();
table.Name = "MyTable";
table.Columns.Append("ID", DataTypeEnum.adInteger, 10);
table.Columns.Append("Name", DataTypeEnum.adVarWChar, 50);
table.Keys.Append("PrimaryKey", KeyTypeEnum.adKeyPrimary, "ID", "", "");
catalog.Tables.Append(table);
// 插入数据
Connection connection = new Connection();
connection.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\path\\to\\database.mdb");
Recordset recordset = new Recordset();
recordset.Open("SELECT * FROM MyTable", connection, CursorTypeEnum.adOpenDynamic, LockTypeEnum.adLockOptimistic);
recordset.AddNew();
recordset.Fields["ID"].Value = 1;
recordset.Fields["Name"].Value = "John";
recordset.Update();
recordset.Close();
connection.Close();
```
请注意,你需要先安装Microsoft Access Database Engine(链接:https://www.microsoft.com/en-us/download/details.aspx?id=13255)来使用ADOX操作Access数据库。另外,如果你要连接到已存在的Access数据库,可以使用`Catalog`对象的`let_ActiveConnection`方法来指定连接字符串。
希望这个示例能帮助你开始使用ADOX在C#中读写Access数据库!如有其他问题,请随时提问。
阅读全文