C 訪問和操作MYSQL資料庫

2021-05-27 17:58:07 字數 4565 閱讀 6256

這裡介紹下比較簡單的方式,引用mysql.data.dll然後新增乙個mysqlhelper類來對mysql資料庫進行訪問和操作。

1.將mysql.data.dll引用到你的專案中

新增引用後在你的資料庫操作類(如mysqlhelper.cs)中新增引用宣告

using

mysql.data;

using

mysql.data.mysqlclient;

2.新增乙個mysqlhelper類來對mysql資料庫進行操作。 mysqlhelper.cs網上有很多列子,把**拷下來就可以直接使用。如果裡面的excecutenonquery、getdataset等基本訪問資料庫方法還是無法滿足你開發需求的話,你還可以自己重新改寫**來擴充其功能。

mysqlhelper:

using

system;

using

system.collections;

using

system.configuration;

using

mysql.data;

using

mysql.data.mysqlclient;

using

system.data;

//////

mysqlhelper 的摘要說明

///

public

abstract

class

mysqlhelper

}///

///用現有的資料庫連線執行乙個sql命令(不返回資料集)

///

///乙個現有的資料庫連線

///命令型別(儲存過程, 文字, 等等)

///儲存過程名稱或者sql命令語句

///執行命令所用引數的集合

///執行命令所影響的行數

public

static

intexecutenonquery(mysqlconnection connection, commandtype cmdtype,

string

cmdtext,

params

mysqlparameter commandparameters)

//////

使用現有的sql事務執行乙個sql命令(不返回資料集)

///

//////

舉例:///

int result = executenonquery(connstring, commandtype.storedprocedure, "publishorders", new mysqlparameter("@prodid", 24));

///

///乙個現有的事務

///命令型別(儲存過程, 文字, 等等)

///儲存過程名稱或者sql命令語句

///執行命令所用引數的集合

///執行命令所影響的行數

public

static

intexecutenonquery(mysqltransaction trans, commandtype cmdtype,

string

cmdtext,

params

mysqlparameter commandparameters)

//////

用執行的資料庫連線執行乙個返回資料集的sql命令

///

//////

舉例:///

mysqldatareader r = executereader(connstring, commandtype.storedprocedure, "publishorders", new mysqlparameter("@prodid", 24));

///

///乙個有效的連線字串

///命令型別(儲存過程, 文字, 等等)

///儲存過程名稱或者sql命令語句

///執行命令所用引數的集合

///包含結果的讀取器

public

static

mysqldatareader executereader(

string

connectionstring, commandtype cmdtype,

string

cmdtext,

params

mysqlparameter commandparameters)

catch

}///

///返回dataset

///

///乙個有效的連線字串

///命令型別(儲存過程, 文字, 等等)

///儲存過程名稱或者sql命令語句

///執行命令所用引數的集合

///public

static

dataset getdataset(

string

connectionstring, commandtype cmdtype,

string

cmdtext,

params

mysqlparameter commandparameters)

catch

(exception e)

}///

///用指定的資料庫連線字串執行乙個命令並返回乙個資料集的第一列

///

//////

例如:///

object obj = executescalar(connstring, commandtype.storedprocedure, "publishorders", new mysqlparameter("@prodid", 24));

///

///乙個有效的連線字串

///命令型別(儲存過程, 文字, 等等)

///儲存過程名稱或者sql命令語句

///執行命令所用引數的集合

///用 convert.to把型別轉換為想要的

public

static

object

executescalar(

string

connectionstring, commandtype cmdtype,

string

cmdtext,

params

mysqlparameter commandparameters)

}///

///用指定的資料庫連線執行乙個命令並返回乙個資料集的第一列

///

//////

例如:///

object obj = executescalar(connstring, commandtype.storedprocedure, "publishorders", new mysqlparameter("@prodid", 24));

///

///乙個存在的資料庫連線

///命令型別(儲存過程, 文字, 等等)

///儲存過程名稱或者sql命令語句

///執行命令所用引數的集合

///用 convert.to把型別轉換為想要的

public

static

object

executescalar(mysqlconnection connection, commandtype cmdtype,

string

cmdtext,

params

mysqlparameter commandparameters)

//////

將引數集合新增到快取

///

///新增到快取的變數

///乙個將要新增到快取的sql引數集合

public

static

void

cacheparameters(

string

cachekey,

params

mysqlparameter commandparameters)

//////

找回快取引數集合

///

///用於找回引數的關鍵字

///快取的引數集合

public

static

mysqlparameter getcachedparameters(

string

cachekey)

//////

準備執行乙個命令

///

///sql命令

///oledb連線

///oledb事務

///命令型別例如 儲存過程或者文字

///命令文字,例如:select * from products

///執行命令的引數

private

static

void

preparecommand(mysqlcommand cmd, mysqlconnection conn, mysqltransaction trans, commandtype cmdtype,

string

cmdtext, mysqlparameter cmdparms)}}

C 訪問和操作MYSQL資料庫

1.將mysql.data.dll引用到你的專案中 新增引用後在你的資料庫操作類 如mysqlhelper.cs 中新增引用宣告 using mysql.data using mysql.data.mysqlclient 2.新增乙個mysqlhelper類來對mysql資料庫進行操作。mysqlh...

c 訪問mysql資料庫

c 訪問mysql資料庫,實現 show database功能 連線之前。先用mysql init初始化mysql連線控制代碼 1.mysql init mysql 使用mysql real connect連線server,其引數依次為mysql控制代碼。serverip位址。登入mysql的use...

c 操作mysql資料庫

include include stdio.h include winsock.h include mysql.h int main else else sprintf tmp,update s set 商品 s 賣出 d,成交 d,漲跌 d,買進 d,總量 d,漲幅 f,時間 s where s ...