OleDbDataReader!缺少参数?(有详细附图)
首先代码如下:
OleDbConnection con = new OleDbConnection();
con.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\ttest.mdb;Persist Security Info=True;Jet OLEDB:Database Password=wagn";
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = con;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "select 编号,标题 from logs";
con.Open();
OleDbDataReader rs = cmd.ExecuteReader();
return rs;
提示错误:cmd.ExecuteReader();至少有一个参数没有被指定值!
然后将代码换成:
OleDbConnection con = new OleDbConnection();
con.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\ttest.mdb;Persist Security Info=True;Jet OLEDB:Database Password=wagn";
OleDbCommand cmd = new OleDbCommand("select 编号,标题 from logs",con);
con.Open();
OleDbDataReader rs = cmd.ExecuteReader();
return rs;
还是一样的!
------解决方案--------------------是不是Data Source= ¦DataDirectory ¦\ttest.mdb;这里有问题,|表示什么?
你先写个绝对的路径看看
------解决方案--------------------....
------解决方案--------------------你跟踪一下看看,可能是你的OleDbConnection 对象为空,根本就没有打开一个数据库连接
查一下数据库连接的字符串是否有问题
------解决方案--------------------应该是数据库的问题,看看数据路径对不对
------解决方案--------------------OleDbDataReader rs = cmd.ExecuteReader(CommandBehavior.CloseConnection);
------解决方案--------------------OleDbException就是返回OLEDB数据源的警告或错误时引发的异常
你可以catch一下这个异常
然后输出该异常的StackTrace看看
很久没连过Access数据库了,所以也不太确定是怎么回事
但是肯定是数据源的问题
------解决方案--------------------.......晕
------解决方案--------------------晕迷,你是不是把数据库打开了在