c# – 用于Microsoft Access 2010.accdb的SQL连接字符串

前端之家收集整理的这篇文章主要介绍了c# – 用于Microsoft Access 2010.accdb的SQL连接字符串前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 winforms进行简单的登录表单并在C#中访问2010数据库(.accdb).

我有以下代码,似乎连接字符串是错误的.我试过搜索,发现.Jet是用于访问07 ??但这似乎也没有用.
我是数据库的业余爱好者(代码来自msdn).我无法理解我应该在这个例子中使用哪个.

访问表名称:哈哈

ID (PK)  |   password
-----------------------
   1     |   testing
System.Data.sqlClient.sqlConnection conn = new System.Data.sqlClient.sqlConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\BC207\test.accdb");
        System.Data.sqlClient.sqlCommand comm = new System.Data.sqlClient.sqlCommand();

        comm.CommandText = "SELECT HAHA(*) FROM password";
        comm.CommandType = CommandType.Text;
        comm.Connection = conn;

        conn.Open();

        Object returnValue = comm.ExecuteScalar();
        conn.Close();

        MessageBox.Show((string)returnValue);

编辑:表的名称是密码,我想要获取值的字段是ID.

sql语句我把它写成:SELECT ID FROM password

是的,表中只有一个记录中只有一个记录作为主键.

无论如何,问题是程序在第一行执行时挂起
– >不支持关键字:’provider’.

所以我想我有一个错误的连接字符串..

解决方法

对于Acces数据库(.mdb,.accdb等…),您希望使用 OleDbConnection,而不是sqlConnection(sql Server),如下所示:
conn = new System.Data.OleDb.OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\BC207\test.accdb")

猜你在找的C#相关文章