Vs2012连接Accese数据库
这几天在实现一个功能,用VS2010+Access 2010,将自己的一点心得跟大家分享下。访问Access 用到了微软的Microsoft Access Engine(ACE) 关于ACE的结构大家可以看这个连接http://msdn.microsoft.com/en-us/library/ff965871.aspx#DataProgrammingWithAccess2010_ATLOLEDBExample
1,打开 Access 2010
OleDbConnection pCnn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=E:\\arcgis\\WindowsApp\\Demo\\Database.accdb;Persist Security Info=False;"); pCnn.Open();
2,插入数据
string pQuery = "INSERT into [练习]" + pSqlFields + " " + "values" + pValues;
OleDbConnection pCnn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=E:\\arcgis\\WindowsApp\\Demo\\Database.accdb;Persist Security Info=False;"); pCnn.Open();
// OleDbCommand cmd = new OleDbCommand(query, cn);
// cmd.ExecuteNonQuery();
OleDbCommand pCmd = new OleDbCommand(pQuery, pCnn);
pCmd.ExecuteNonQuery();
pCnn.Close();
3,添加字段
添加一个字段:
pQuery = "ALTER TABLE [练习]" + " " + "Add" + " " + "FieldName"+" "+"字段类型";
添加多个字段(逗号隔开):
pQuery = "ALTER TABLE [练习]" + " " + "Add" + " " + "FieldName1"+" "+"字段类型1"+","+"FieldName2"+" "+"字段类型2";
4,删除表:
DROP TABLE 表名称;
5,创建表:
CREATE TABLE 表名 (字段名称1 LONG, 字段名称2 TEXT) ;
6.删除记录
SqlDelete = "DELETE from [练习 WHERE 元数据名称=" + "'" + pRelationName + "'";
说明,在用C#操纵这些的时候,尤其要注意空格
原博地址:http://www.gisall.com/html/63/151663-5102.html
转载:http://access911.net/fixhtm/72FABF1E10DCEDF3.htm
Access2010格式仍然采用与ACCESS2007一样的 .accdb 格式,用 MDAC 2.8 SP8 和 JET DB 4.0 都支持不了,所以必须下载新的 Microsoft Access Database Engine 2010 Redistributable 。地址如下:
微软的说明如下:
| 此下载将安装一组组件,非 Microsoft Office 应用程序可以使用它们从 2010 Office system 文件中读取数据以及向这些文件中写入数据,例如 Microsoft Access 2010 (mdb 和 accdb)文件以及 Microsoft Excel 2010 (xls、xlsx 和 xlsb)文件。还支持与文本文件建立连接。 此外,还会安装 ODBC 和 OLEDB 驱动程序,供应用程序开发人员在开发与 Office 文件格式连接的应用程序时使用。 |
注意,虽然ACCESS2010与ACCESS2007使用同样的ACCDB格式,而且在2010中也显示其使用的默认格式为 ACCESS 2007 的 ACCDB 格式,但是其存储的一些特性是不同的。比如:data macros, validation rules, calculated columns 等等。所以尽量不要混用 ACCESS 2010 和 ACCESS 2007。
由于 ACCDB 格式没有变化,所以连接 ACCESS 2010数据库时仍然使用 OLEDB 的应用程序连接,将 ConnectionString 属性的 Provider 参数设置为“Microsoft.ACE.OLEDB.12.0” 。而 Excel 的开发人员需要更改字串将“Excel 14.0”添加到 OLEDB 连接字符串的扩展属性中。
但是 MADE2010 与 MADE2007 有什么区别暂时还没进行测试,估计就是对上述特性的支持不同。 请参考: http://msdn.microsoft.com/en-us/office/cc907897.aspx http://access911.net/csdn/FileDescription.asp?mdb=2010-6-2&id=3
本站文章旨在为该问题提供解决思路及关键性代码,并不能完成应该由网友自己完成的所有工作,请网友在仔细看文章并理解思路的基础上举一反三、灵活运用。

浙公网安备 33010602011771号