C 操作MySQL資料庫的簡單例子

2021-05-22 10:36:03 字數 2118 閱讀 8712

字型大小: 

小中大

示例演示了用c#操作mysql的方法,提供了三個可重用的類mysqldbutil,mysqlpageutil,page。

本示例由 c#操作access資料庫的簡單例子(http://www.albertsong.com/read-56.html)修改而來。

將bin目錄裡的mysql.data.dll檔案複製到工程目錄,並且將dll的引用加入到專案中,這樣就可以通過相關的類來操作mysql資料庫了。

using mysql.data.mysqlclient;

using system.data;

連線字串:string connectionstring = "server=127.0.0.1;user id=root; password=as; database=albertsong; pooling=false;charset=utf8";

連線字串中各個專案的意思是很明確的,需要注意的是charset應該設定成和資料庫表的charset一致,否則可能出現中文亂碼。

然後將整個專案中的oledb用mysql替換,這樣基本上就可以了。不同的是帶引數的sql語句,

access中是

string sql="insert into product(name,quantity,price,sale_date,checked_flag)values(?,?,?,?,?)";

parameters[0]=new mysqlparameter("@name",mysqldbtype.varchar,100);

mysql中應改為

string sql="insert into product(name,quantity,price,sale_date,checked_flag)values(?name,?quantity,?price,?sale_date,?checked_flag)";

parameters[0]=new mysqlparameter("?name",mysqldbtype.varchar,100);

2.取得mysql自增標識欄位在插入資料後的id值

cmd.commandtext = @"select @@identity";

int value = int32.parse(cmd.executescalar().tostring());

return value;

用cmd.commandtext = @"select last_insert_id()";結果一樣,兩者的區別沒有研究。

3.分頁查詢

使用limit子句來處理分頁查詢,這樣相對於access的分頁查詢,**大量簡化,效率也會提高。

本例程是乙個c#的winform程式,但是資料訪問類可以在web環境下使用。

執行前先利用bin/release下的sql語句檔案建表並修改mysqldbutil中的連線字串。

本例程演示了:

1.mysql資料庫的插入,更新,修改,查詢;

2.帶引數的sql語句的使用,而不是拼sql;

3.使用limit子句的分頁查詢;

4.用事務同時執行多個sql語句;

5.在插入資料的同時返回最新的id值;

6.整型,實型,字串,日期型,布林型五種資料型別的操作;

7.使用正規表示式來驗證整數和實數;

8.listview用來顯示資料的一些基本用法。

本示例不包括:

1.完善的分頁封裝,只提供了分頁的簡單包裝。

2.巢狀的事務處理,提供了同時執行多個sql語句的事務處理,但不支援巢狀事務。

3.listview的使用,只是利用winform控制項來演示資料訪問,因此不能作為winform程式設計的良好示例,例如新增資料時介面並沒有很好地更新。

後記:由於api介面一致,將操作access資料庫的類改為操作mysql資料庫的類很容易,利用這兩個示例,可以學習基本的資料庫操作,也可以用來做一些簡單的應用程式了。實際的專案中有成熟的開源專案可用,如ibatis.net和nhibernate,這些專案都建築在這些基本的api之上,先學習我寫的這兩個小例子也有助於學習理解這些專案。

Mysql資料庫簡單操作

net start mysql 服務名 l l net stop mysql 服務名停止 bin mysqladmin uroot shutdown l 登陸資料庫 開啟dos 視窗 l mysql u root p mysql lmysql uroot p p5188 db1 default ch...

MySQL資料庫簡單操作

建立資料庫,同時設定字符集和校驗規則 create database ifnot exists testdb default character set utf8 collate utf8 general ci 刪除資料庫,不存在會報錯 drop database testdb 顯示所有資料庫 sh...

MySQL資料庫簡單操作

1.c users administrator mysql u root p 客戶端連線資料庫伺服器 enter password 有密碼輸入密碼登入,沒有直接回車進入 2.mysql show databases 顯示資料庫 3.mysql drop database if exists clas...