如果是個人用的小程式的話。一般都推薦用Sqlite和Access
可以在收索你需要的版本。
微軟ADO.NET資料提供程式
資料提供程式
命名空間
程式集
OLE DB
System.Data.OleDb
System.Data.dll
Microsoft SQL Server
System.Data.SqlClient
System.Data.dss
Microsoft.SQL Server Mobile
System.Data.SqlServerCe
System.Data.SqlServerCe.dll
ODBC
System.Data.Odbc
沒有特定的資料提供程式直接映射到Jet引擎(比如微軟的Access資料庫),如果要和Acces資料檔案互動,可以使用OLE DB資料提供程式或者ODBC資料提供程式。
由定義在System.Data.OleDb命名空間下的類組成的OLE DB 資料提供程式能讓你通路所有支援基于傳統COM的OLD DB協定的資料庫,使用這個資料庫提供程式,能非常簡單地改變連接配接字元串中的“provider”,并能和各種OLE DB資料庫進行通信。
如果你安裝了微軟的office。那麼也安裝了Access資料庫,現在我們來一步一步完成對Access資料庫的通路
打開Access資料庫,選擇建立資料庫。選擇儲存路徑和取名,單擊建立即可
然後的界面就很熟悉了
單擊 "單擊以添加" 可以選擇資料類型
選擇類型後。比如這裡選擇文本類型。就可以輸入字段名稱
這裡你會看到前面有一個預設的列ID。預設是主鍵。自增的。你可以選擇目前列。在屬性中看到,當然。你也可以改變目前字段的資料類型
為了簡化操作,我這裡隻建立3個字段用于測試
字段名稱
字段類型
字段說明
name
string
姓名
age
int
年齡
crateDate
DateTime
添加時間(預設值是當天)
建立時間createDate需要設定預設值,選擇createDate列,在屬性部分。單擊預設值。輸入Now(),确定即可。還可以設定表達式格式。可以自己去看
建立完成後。ctrl+s儲存。輸入表名稱user,确定
現在建立一個控制台程式。來連接配接Access
添加引用:System.Data.dll,
添加命名空間:using System.Data.OleDb;
為了友善。把資料庫拷貝到項目的Debug目錄下面,編寫測試代碼
運作後提示錯誤:
仔細看sql語句是不是沒有錯誤的文法。再仔細想想呢?對,user是關鍵字,需要加用[]包裹。像這樣:[user]
string sql = "insert into [user](name,age)values(@name,@age)";
修改後在運作,人品爆發的成功了
是不是迫不及待的想看看Access資料庫中是否真的插入成功呢?
打開資料庫界面。F5重新整理試試
當然,你可以可以編寫sql查詢
右鍵:
跟着一步一步下來是不是也沒有想象中的那麼難呢?其實什麼都不難。隻要你肯努力:)
來看看連結字元串:
//連接配接Access字元串
string conStr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=userInfo.accdb;Persist Security Info=False";
這裡的Microsoft.ACE.OLEDB.12.0,是連接配接Excel對象的接口引擎,與之對應的是:microsoft.jet.oledb.4.0
那麼問題來了:
Microsoft.jet.oledb.4.0和Microsoft.ACE.OLEDB.12.0引擎有什麼差別呢?
共同點:都是做為連接配接Excel對象的接口引擎
不同點:
對于不同的Excel版本,有兩種接口可供選擇:Microsoft.Jet.OLEDB.4.0(以下簡稱 Jet 引擎)和Microsoft.ACE.OLEDB.12.0(以下簡稱 ACE 引擎)。
Jet 引擎,可以通路 Office 97-2003,但不能通路 Office 2007。
ACE 引擎是随 Office 2007 一起釋出的資料庫連接配接元件,既可以通路 Office 2007,也可以通路 Office 97-2003。
另外:Microsoft.ACE.OLEDB.12.0 可以通路正在打開的 Excel 檔案,而 Microsoft.Jet.OLEDB.4.0 是不可以的。
是以,在使用不同版本的office時,要注意使用合适的引擎。
我這裡用的Access 2007,是以用的是ACE引擎
Data Source=userInfo.accdb。這裡通路的是相對路徑。因為資料庫放在了Debug下面,但我來自火星。我就偏偏不喜歡把資料庫放到Debug下面。
我想在項目中單獨建立一個目錄來存放資料庫。那怎麼辦呢?好吧。程式員是偉大的。那你可以改路徑,在項目下面建立一個db檔案夾。把資料集拷貝到裡面,結構圖
從圖可以看出來,從Debug目錄到db目錄要退兩次,那麼不就是 “..\..\” 。對嗎?
那立馬改改看看效果:
string conStr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=..\..\db\userInfo.accdb;Persist Security Info=False";
對與否。你自己去測試下。哈哈。
記住:sql server中是可以拼接多條sql語句。然後一次性執行的。對吧,但Access是不行的。如果要執行多條sql語句。必須循環周遊。執行一條在執行下一條,直到海枯石爛。
為了更好的維護。當然是首選把連接配接字元串配置到app.config中
看看我已經配好了的
最後提供一個SQLHelper.cs 類
sqlite、Access都隻要安全驅動就可以用資料庫。那sql server是不是也可以 呢。答案是正确的。
隻要安裝Microsoft SQL Server 2005 Express Edition,就可以使用sql資料庫了
當安裝vs2010或其他版本,也就順帶的安裝了express Edition
Microsoft SQL Server 2005 Express Edition官網下載下傳:
<a href="http://www.microsoft.com/zh-cn/download/details.aspx?id=21844" target="_blank">http://www.microsoft.com/zh-cn/download/details.aspx?id=21844</a>
但要管理資料庫就需要安裝SQL Server Management Studio。
在網上找到一片關于Express edition 開啟遠端連接配接的方法,我沒嘗試過。真的。我不騙你
<a href="http://blog.csdn.net/xiongyilong/article/details/1925353" target="_blank">http://blog.csdn.net/xiongyilong/article/details/1925353</a>
轉載于此:
SQL Server 2005 Express 作為微軟資料庫的低端解決方案,在開發小型應用和WEB應用中有廣泛的使用。但是SQL Server 2005 Exrpress在預設安裝下隻允許本機通路,如何啟用網絡通路功能就很有必要,現在我簡單的介紹一下。
1、 确 認成功安裝SQL Server 2005 Express和 資料庫服務已經啟動。安裝完成後,可以通過随SQL Server 2005 Express一同安裝的工具 SQL Server Configuration Manager 檢視資料庫服務和其他的配置資訊。
上圖顯示資料庫服務已經啟用。
2、 查 看SQL Server Express 2005 網絡配置資訊(SQL Server 2005 Network Configuration――> Protocols for SQLEXPRESS)。預設的情況下右邊清單中的Named Pipes和TCP/IP的狀态為Disable,即沒有啟用。右鍵點選這兩項,在彈出菜單中選中Enable啟用這兩個協定,如下圖。
3、 在TCP/IP協定上輕按兩下滑鼠,彈出對話框。修改對話框Protocol屬性頁中的“Listen All ”項設為“no”。IP Address屬性頁中,修改你要資料庫服務監聽的IP位址的屬性,修改Enabled屬性為Yes,修改TCP Dynamic Ports屬性為空,TCP Port項在預設安裝下為空,現在修改為我們監聽端口1433。修改後的狀态如下圖所示;
4、 啟動管理工具
,管理界面如下所示:
選中“Surface Area Configuration for Services and Connection”選項
5、 改修改DATA Engine的Remote Connection屬性,修改後的屬性如下圖所示:
6、 完成以上操作後需要重新啟動資料庫服務才能使修改生效,下圖的操作可以完成資料庫服務的重新開機。
7、 重新開機後,可以在指令視窗輸入如下指令“netstat - na”指令檢視伺服器監聽的所有端口,如果我們裝置的1433端口正在監聽,我們啟用SQL Server 2005 Express網絡操作成功。當然也可以使用telnet 指令來驗證資料庫操作是否成功。使用netstat指令操作如下圖所示。
好了。至此。完