在C#中使用ADO.NET读取Ms Access数据库 [英] Read Ms Access database using ADO.NET in C#

查看:83
本文介绍了在C#中使用ADO.NET读取Ms Access数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试读取MS Access数据库.我正在使用Microsoft Access2007.
您能否解释为什么会发生此错误.
错误:
OlebdExceptionUnhandled
没有为一个或多个必需参数给出值.


包含异常的代码块:

Im trying to read a MS Access database. i m using microsoft access 2007.
Can you explain why this error is ocurring.
Error:
OlebdExceptionUnhandled
No value given for one or more required parameters.


Code Block containing exception:

string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;"+"Data Source=C:\\Users\\admim\\Documents\\Mydatabase.accdb";
OleDbConnection conn = new OleDbConnection(connectionString);

            conn.Open();

            string commandString = "SELECT " + "artId,title,topic,authorId" +
                                    "name,lines,dateOfPublishing" +
                                    "FROM" +
                                    "article";
OleDbDataAdapter dataAdapter = new OleDbDataAdapter(commandString, conn);

            DataSet ds = new DataSet();

            dataAdapter.Fill(ds);





感谢您的帮助





thank you for your help

推荐答案

尝试使用更多的逗号和空格:
Try using more commas and spaces:
string commandString = "SELECT " + "artId,title,topic,authorId" +
                        "name,lines,dateOfPublishing" +
                        "FROM" +
                        "article";

成为

string commandString = "SELECT " + "artId,title,topic,authorId," +
                        "name,lines,dateOfPublishing " +
                        "FROM " +
                        "article";

如果将其写成更少的行,可能会更加明显:

If you write it as fewer lines, it may be more obvious:

string commandString = "SELECT artId,title,topic,authorId, name,lines,dateOfPublishing" +
                       " FROM article";


问题出在命令字符串中.
The problem is in the command string.
<pre lang="midl">string commandString = "SELECT artId,title,topic,authorId, name,lines,dateOfPublishing " +
                                  " FROM article";




我在dateOfPublishing之后错过了一个空格.




i missed a space after dateOfPublishing.


这篇关于在C#中使用ADO.NET读取Ms Access数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆