C#连接ACCESS数据库的详细步骤!

一、建立FORM窗体,加一个按钮控件,加一个DATAGRIDVIEW控件。

二、双击FORM,加入命名空间using System.Data.OleDb;

       双击按钮,进入按钮代码,写如下代码

            OleDbConnection strConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + "员工信息.mdb" + ";Persist Security Info=False");

            //建立数据库引擎连接,注意数据表(后缀为.db)应放在DEBUG文件下
            OleDbDataAdapter myda = new OleDbDataAdapter("select * from 雇员 ,strConnection);

           //建立适配器,通过SQL语句去搜索数据库
            DataSet myds = new DataSet();

           //建立数据集
            myda.Fill(myds, "雇员");

           //用FILL的方式将适配器已经连接好的数据表填充到数据集MYDS这张表

           dataGridView1.DataSource = myds.Tables["联系人ID"];

          //用显示控件来显示表

三、按F5运行后,点击BUTTON按钮,便会显示相应的SQL语句下的数据库里的表。

     

下面利用Command和reader对象在控制台应用程序下输出数据。

[csharp]  view plain copy print ?
  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Text;  
  5. using System.Data.OleDb;  
  6.   
  7. namespace ConsoleApplication19  
  8. {  
  9.     class Program  
  10.     {  
  11.         static void Main(string[] args)  
  12.         {  
  13.   
  14.             OleDbConnection mycon =null;  
  15.             OleDbDataReader myReader=null;  
  16.             try  
  17.             {  
  18.                 string strcon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db4.mdb;";  
  19.                 mycon = new OleDbConnection(strcon);  
  20.                 mycon.Open();  
  21.                 string sql = "select * from 雇员 ";  
  22.                 OleDbCommand mycom = new OleDbCommand(sql, mycon);  
  23.                 myReader = mycom.ExecuteReader();  
  24.                 while (myReader.Read())  
  25.                 {  
  26.                     Console.WriteLine(myReader.GetString(0)+" "+myReader.GetDouble(1)+" "+myReader.GetString(2)+" "+myReader.GetString(3)+" "+myReader.GetString(4));  
  27.   
  28.                 }  
  29.   
  30.             }  
  31.             finally   
  32.             {  
  33.                 myReader.Close();  
  34.                 mycon.Close();  
  35.                   
  36.             }  
  37.         }  
  38.     }  
  39. }  



 今天一个网友问到如何在C#中连接access数据库,经查找资料以及请教网友sammyLan,终于测试成功,大致过程如下

1、建立一个access数据库名字为CSharptest.mdb,里面有一个表person,它有两个字段personname(备注:由于name是access的关键字之一,所以尽量不要将字段名或者表明起为name,否则可能出错)和age,分别是文本和数字类型。

并插入两条记录,如下所示

personname     age

bushi                   30

John                    20

2、将access数据库文件CSharptest.mdb所在的目录(假设名为access)设为共享,假设我的机器地址为192.168.1.10,那么设为共享后,在地址栏内输入//192.168.1.10/access/这个目录应该之后可以看到CSharptest.mdb文件。

3、打开VS2008,菜单中点"新建"->"项目"->"Visual C#"->"Windows"->"windows窗体应用程序",建立一个新的C#窗体程序。

4、修改代码文件program.cs的内容,其完整C#代码如下。已经加了注释,就不再另外解释了

[c-sharp]  view plain copy
  1. using System.Windows.Forms;  
  2. using System.Data;  
  3. using System.Data.OleDb;  
  4.   
  5. namespace WindowsFormsApplication1  
  6. {  
  7.     static class Program  
  8.     {  
  9.         ///   
  10.         /// 应用程序的主入口点。  
  11.         ///   
  12.         [STAThread]  
  13.         static void Main()  
  14.         {  
  15.             //构造连接字符串  
  16.            string strConnection="Provider=Microsoft.Jet.OleDb.4.0;";  
  17.          strConnection +=@"Data Source=//192.168.1.10//access//CSharptest.mdb";  
  18.   
  19.   
  20.             OleDbConnection objConnection = new OleDbConnection(strConnection);  //建立连接  
  21.             objConnection.Open();  //打开连接  
  22.             OleDbCommand sqlcmd = new OleDbCommand(@"select * from person where personname='John'",objConnection);  //sql语句  
  23.             OleDbDataReader reader = sqlcmd.ExecuteReader();              //执行查询  
  24.             int age = new int();  
  25.            if(reader.Read()){ //这个read调用很重要!不写的话运行时将提示找不到数据  
  26.                 age = (int)reader["age"];   //取得字段的值  
  27.                 objConnection.Close();  
  28.                 reader.Close();  
  29.             }  
  30.   
  31.             Application.EnableVisualStyles();  
  32.             Application.SetCompatibleTextRenderingDefault(false);  
  33.             Form1 form = new Form1();  
  34.             form.Text = age.ToString();  
  35.             Application.Run(form);  
  36.         }  
  37.     }  
  38. }  


你可能感兴趣的:(C#)