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

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

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

访问表名称:哈哈@H_301_4@

  1. ID (PK) | password
  2. -----------------------
  3. 1 | testing
  1. System.Data.sqlClient.sqlConnection conn = new System.Data.sqlClient.sqlConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\BC207\test.accdb");
  2. System.Data.sqlClient.sqlCommand comm = new System.Data.sqlClient.sqlCommand();
  3.  
  4. comm.CommandText = "SELECT HAHA(*) FROM password";
  5. comm.CommandType = CommandType.Text;
  6. comm.Connection = conn;
  7.  
  8. conn.Open();
  9.  
  10. Object returnValue = comm.ExecuteScalar();
  11. conn.Close();
  12.  
  13. MessageBox.Show((string)returnValue);

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

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

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

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

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

解决方法

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

猜你在找的C#相关文章