1. 程式人生 > >C#實現ODBC驅動程式碼連線Sql Server資料庫

C#實現ODBC驅動程式碼連線Sql Server資料庫

      ODBC連線Sql Server資料庫-C#實現

          利用ODBC驅動程式,可以以一種相同的語法來存取和維護資料表中的資料。為了便於在應用程式中使用ODBC,首先需要配置ODBC資料來源,又稱DSN,它把應用程式所要使用的驅動程式,資料庫,使用者名稱和密碼等資訊組合起來,供其客戶端使用。          1 首先配置ODBC資料來源--- 截圖來說明吧          (1)            (2)單擊完成 即彈出"建立到SQL Server的新資料來源"對話方塊,在“名稱”文字框內輸入DSN的名稱,單擊“伺服器”下拉列表框,選擇SQL Server伺服器(注意此處的伺服器即為安裝資料庫時的伺服器 )          
          我自己安裝資料庫Sql Server2005時的伺服器名稱即為上圖所示,以圖片為例               (3) 然後單擊下一步,輸入登入使用者名稱以及密碼。以圖為例                注意這裡的登入ID與密碼,需要與自己安裝Sql Server2005時資料庫設定的使用者資訊有關,我的是sa與123456        如果輸入不正確的話,會有錯誤產生。此時應當百度查詢“win7 修改sql server2005設定的使用者資訊”,之後會發現原來就只是在資料庫中的安全性做了些需修改而已,在這          裡就不贅述。      (4)單擊下一步 即可進行設定預設訪問資料庫,在這裡我建了一個數據庫StudentManagementSystem,以及一個表StudentInfo,如下圖所示       
    (5)單擊下一步,就基本上完成了              在這裡我對後面的兩個複選框,即“將長時間執行的查詢儲存到日誌檔案”與”將ODBC驅動程式統計記錄到日誌檔案“的儲存路徑以及檔名都進行了修改     (6)單擊完成,會彈出ODBC資料來源的描述資訊,再單擊”測試資料來源“按鈕,進行資料連線測試,之後單擊確定按鈕,就成功配置了ODBC資料來源,即成功建立了ODBC資料              源,即建立了DSN橋樑                      接下來,進行程式碼的連結:以上及以下都是基於  VS2010旗艦版,Sql Server2005資料庫 win7 32位進行         下面採用C#程式碼進行測試     (1)介面簡單設計如下      
   (2)單擊"連線資料庫"  與  ”退出應用程式“  兩個按鈕的事件程式碼      
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.Odbc;

namespace DataBaseConnectSqlServer
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void buttonCancel_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void buttonConnectToSqlServer_Click(object sender, EventArgs e)
        {
            try
            {
                //DSN:mylink資料來源的名稱 UID:sql server登入時的身份sa PWD:登入時的密碼123456
                //生成連線資料庫字串
                string ConStr = "DSN=mylink;UID=sa;PWD=123456";
                //定義SqlConnection物件例項
                OdbcConnection odbcCon = new OdbcConnection(ConStr);
                string SqlStr = "select * from StudentInfo";

                OdbcDataAdapter odbcAdapter = new OdbcDataAdapter(SqlStr, odbcCon);
                DataSet ds = new DataSet();

                odbcAdapter.Fill(ds);
                this.dataGridView.DataSource = ds.Tables[0].DefaultView;
            }
            catch (System.Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
    }
}

      (3)執行應用程式  點選”連線資料庫“按鈕出現的效果如下             至此 已經基本上完成了目的      但似乎有這樣的問題:點選”連線資料庫“按鈕之後,會很慢,需要等很久才能出來資訊,但我現在還不知道為什麼?????      留著日後解答!!!!