最近在學習使用數據庫進行C#開發項目的數據管理。學習了下sql server 和mysql的東西。這兩個比較相似,而且容易上手,準備以後用這個了。
首先,使用C#連接數據庫,要有C#和數據庫之間通訊的接口。
如果用sql server,那麼C#中已經包含了這些接口,在system.data.sqlClient中。如果使用mysql,則需要下載用於通訊的接口dll.我用的是mysql-connector-net-5.0.9.exe.這個可以根據你安裝的mysql版本去官網上下載。下載安裝後哦,將安裝路徑下的MySql.Data.dll添加到C#引用中就可以使用了。具體的使用方法基本和sql server相同。比如,sql server是SqlConnection連接對象;mysql是MySqlConnection創建連接對象。
接下來,就是創建與數據庫的連接了。
這裏使用的是連接字符串。一開始學習,網上各種材料直接給出了像string constr = "Data Source=steve-pc;Initial Catalog=itcast2013;Integrated Security=True";這樣的連接字符串。裏面各個關鍵字什麼意思呢?都有哪些關鍵字,能提供什麼選項?基本上都沒有解析(估計是人家都用的非常熟練了,不屑解釋了)。用起來還是不知道什麼意思,不知道怎麼改動了。
所以,新手推薦使用SqlConnectionStringBuilder 和MySqlConnectionStringBuilder來創建連接對象。它們的屬性和方法都一目瞭然,而且SqlConnectionStringBuilder都有註釋,類推到MySqlConnectionStringBuilder就可以了。
具體怎麼寫呢?上個例子:
1. SqlConnectionStringBuilder ss = new SqlConnectionStringBuilder();
ss.DataSource = "ciwei-pc"; //連接的數據庫的實例或者網絡地址
ss.InitialCatalog = "users"; //連接的數據庫的名稱
ss.IntegratedSecurity = true; //是否可以windows登錄驗證
ss.UserID = "root";
ss.Password = "root";
ss.Pooling = true; //是否使用連接池
using (SqlConnection con = new SqlConnection(ss.ConnectionString))
{
}
2. mysql
MySqlConnectionStringBuilder stf = new MySqlConnectionStringBuilder();
stf.Database = "login"; // 同 ss.initialCatalog
stf.Server = "localhost"; //同 ss.DataSource
stf.UserID = "root";
stf.Password = "root";
stf.Pooling = true;
stf.CharacterSet = "utf8"; // 支持中文
stf.Port = 3306;
using (MySqlConnection con = new MySqlConnection(stf.ConnectionString))
{
....
}
這樣就連上了。