1. 程式人生 > >C# 一步步連線操作ACCESS資料庫

C# 一步步連線操作ACCESS資料庫

連線資料庫時,我們需要用到 OleDbConnection 類 OleDbConnection oleDb = new OleDbConnection(@"Provider = Microsoft.Jet.OLEDB.4.0; Data Source = Database.mdb"); //在這裡,@"Provider = Microsoft.Jet.OLEDB.4.0; Data Source = Database.mdb" 是連線字串

OleDbConnection oleDb = new OleDbConnection(@"Provider = Microsoft.Jet.OLEDB.4.0; Data Source = Database.mdb");
//在這裡,@"Provider = Microsoft.Jet.OLEDB.4.0; Data Source = Database.mdb" 是連線字串

OleDbConnection 類的建構函式要求提供連線字串,所以問題來了,挖掘技術哪家強?怎麼樣獲取連線字串呢?

首先,你需要確定你安裝了office access

開啟,然後新建一個空白資料庫,隨便改改名字,改改目錄

然後建立一個新表——表1

表1裡新增暱稱賬號兩個欄位

重點來了,現在我們把資料庫另存為.mdb,如果建立完就是mdb格式請忽略(如果不另存為,等會的操作可能會有報錯)

另存為後 ,開啟我們的VS,點選選單欄中的 工具-連線到資料庫

點選測試連線

敲黑板,又是重點來了

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\25454\Documents\CSDN.mdb

沒錯啦!我們回到C#寫一個類

    //using System.Data.OleDb;
    class Access
    {
        OleDbConnection oleDb = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\25454\Documents\CSDN.mdb");

        public Access() //建構函式
        {
            oleDb.Open();
        }
    }

沒報錯,看來成功連線上了,我們現在來看一些資料庫的基本操作

如果提示:未在本地計算機上註冊“Microsoft.Jet.OLEDB.4.0”提供程式。  在選單-生成-配置管理器,點選活動解決方案平臺下面的選項框,新建,選擇*86

  public void Get()
            {
                string sql = "select * from 表1";
                //獲取表1的內容
                OleDbDataAdapter dbDataAdapter = new OleDbDataAdapter(sql, oleDb); //建立適配物件
                DataTable dt = new DataTable(); //新建表物件
                dbDataAdapter.Fill(dt); //用適配物件填充表物件
                foreach (DataRow item in dt.Rows)
                {
                    Console.WriteLine(item[0] + " | " + item[1]);
                }
            }

            public void Find()
            {
                string sql = "select * from 表1 WHERE 暱稱='LanQ'";
                //獲取表1中暱稱為LanQ的內容
                OleDbDataAdapter dbDataAdapter = new OleDbDataAdapter(sql, oleDb); //建立適配物件
                DataTable dt = new DataTable(); //新建表物件
                dbDataAdapter.Fill(dt); //用適配物件填充表物件
                foreach (DataRow item in dt.Rows)
                {
                    Console.WriteLine(item[0] + " | " + item[1]);
                }
            }

新增/刪除/修改

  public bool Add()
            {
                string sql = "insert into 表1 (暱稱,賬號) values ('LanQ','2545493686')"; 
                //往表1新增一條記錄,暱稱是LanQ,賬號是2545493686
                OleDbCommand oleDbCommand = new OleDbCommand(sql, oleDb);
                int i = oleDbCommand.ExecuteNonQuery(); //返回被修改的數目
                return i > 0;
            }
            public bool Del()
            {
                string sql = "delete from 表1 where 暱稱='LANQ'";
                //刪除暱稱為LanQ的記錄
                OleDbCommand oleDbCommand = new OleDbCommand(sql, oleDb);
                int i = oleDbCommand.ExecuteNonQuery(); 
                return i > 0;
            }
            public bool Change()
            {
                string sql = "update 表1 set 賬號='233333' where 暱稱='東熊'";
                //將表1中暱稱為東熊的賬號修改成233333
                OleDbCommand oleDbCommand = new OleDbCommand(sql, oleDb);
                int i = oleDbCommand.ExecuteNonQuery(); 
                return i > 0;
            }

可以發現….取查加刪改都用到了sql的操作字串,其他的sql語法可以到菜鳥教程-SQL查閱。