超简单,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根本没关系,是吧