用過VS 和VS 的開發人員肯定知道在安裝這個IDE的時候會自動安裝了壹個精簡版的SQL數據庫服務SqlExpress 這個數據庫系統少了最重要的企業管理器 也就是說不能用它來建數據表和壹些可視化操作 如果碰到項目中要用到SQL數據庫的時候也不能附加到數據庫服務裏面去 導致項目在連接數據庫的時候會提示找不到數據庫文件而讀取失敗 那麽 這個精簡版的SQL數據庫服務是不是意味著壹無是處呢?
其實未必 只要我們在連接數據庫的時候利用好它就可以了~~
在這裏我介紹兩種C#中連接數據庫的方法 壹種需要附加數據庫 壹種則不要 只需要安裝這個精簡版的SQL就可以了…
方法壹
連接代碼
string strconn;strconn = Data Source=(local); ;strconn += Initial Catalog=student; ;strconn += User ID=sa; ;strconn += Password=; ; SqlConnection con = new SqlConnection(strconn);//通過用戶名和密碼連接數據庫//SqlConnection con = new SqlConnection( Data Source=(local);Initial Catalog=library;Integrated Security=True ); //通過系統用戶驗證連接數據庫con Open();SqlDataAdapter thisadapter = new SqlDataAdapter( select * from reader where 條形碼= + txm + con);SqlCommandBuilder thi *** uilder = new SqlCommandBuilder(thisadapter);DataSet thisdataset = new DataSet();thisadapter Fill(thisdataset reader );…… //接下去就是對數據的操作了
? 這種方法必須要附加數據庫文件才可以訪問…
優點是可以通過企業管理器直接對數據庫進行可視化操作 比如對記錄進行全權修改…萬壹碰到數據有錯誤 在系統裏面不好修改的時候可以進行強制維護 同時 如果後期更新系統 增加新的數據庫需求 比如增加字段就可以在裏面操作
當然這也算是缺點 亂改數據可能導致破壞數據庫的壹些規則和數據壹致性 嚴重的話會導致災難性的數據崩潰
方法二
連接代碼
SqlConnectionStringBuilder connectstringbuilder = new SqlConnectionStringBuilder();connectstringbuilder DataSource = @ (local)\sqlexpress ;//指定數據庫服務connectstringbuilder AttachDBFilename=@ |DataDirectory|\data\library mdf ;//數據庫文件 采用相對地址的方式來指定 註意格式connectstringbuilder IntegratedSecurity = true;? connectstringbuilder UserInstance = true;SqlConnection thisconnection =new SqlConnection(connectstringbuilder ConnectionString);SqlDataAdapter thisadapter =new SqlDataAdapter( select * from reader where 條形碼= +txm + thisconnection);DataSet dt = new DataSet();thisadapter Fill(dt info );……//接下去就是對數據的操作了? 這個方法最大的有點就是允許我們不用安裝 M(MSSQL )或者 G(MSSQL )的數據庫系統 只需要安裝SQL精簡版的數據庫服務( M左右)就可以了 而且不用去附加數據庫…
但是這種優點也帶來致命的缺點 就是第壹次連接數據庫的時候會有點慢 這不要緊 但它會重新格式數據庫文件的壹些結構 導致壹些數據格式發生變化 因此連接之後這樣的數據庫文件是不能再次被附加到數據庫系統中的(會報錯) 也就是說後期如果要修改數據庫 比如增加字段和表等是不太可能實現的
不過這也在壹定的程度上帶來了安全性
以上這兩種數據庫連接方式各有千秋 是否要使用就看妳的系統實際應用需求了…
lishixinzhi/Article/program/net/201311/15426