超简单,C# winform如何连接ACCESS数据库?
不知道问题出在哪里?
我用VS2008建立了一个项目(myceshi),然后从“我的电脑”里,打开“myceshi”目录,建立了一个access文件(用office 2003建立的),添加了表,和数据。然后在VS2008里,右键,添加现有项目,添加数据库文件,接着在app.config里多出了如下代码:
<connectionStrings>
<add name="myceshi.Properties.Settings.mydbConnectionString"
connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\mydb.mdb;Persist Security Info=True"
providerName="System.Data.OleDb" />
</connectionStrings>
程序调用如下:
OleDbConnection conn;
OleDbCommand comm;
OleDbDataReader mydr;
try
{
string connstr = ConfigurationManager.AppSettings["connectionStrings"].ToString();
conn = new OleDbConnection(connstr);
comm = new OleDbCommand("select * from thetable", conn);
conn.Open();
mydr = comm.ExecuteReader();
if (mydr.Read())
MessageBox.Show(mydr[1].ToString());
mydr.Dispose();
comm.Dispose();
conn.Close();
}
catch
{
MessageBox.Show("出错啦");
}
功能就是想将数据库里的第二个字段输出,可总是出错,不知道问题在哪里?
Configuration也引用了,并且using了,Oledb也using了
------解决方案--------------------把try去掉就知道问题在哪里了
------解决方案--------------------
你都说了这么简单都能搞错???
你配置节里使用ConnectionString,在代码里你使用AppSetting,前后不一致。
string connstr = ConfigurationManager.AppSettings["connectionStrings"].ToString();
==============》修改成如下
string connstr = ConfigurationManager.ConnectionStrings["myceshi.Properties.Settings.mydbConnectionString"].ConnectionString;
------解决方案--------------------ConfigurationManager.ConnectionStrings
呵呵
其实你可以MessageBox.Show(从配置取出的内容)来验证一下
和access根本没关系,是吧