使用C 連線mysql資料庫

2021-09-30 17:03:17 字數 4303 閱讀 7827

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!

最近做的這個專案要求後台用mysql資料庫,但前台必須用c#,asp.net形式。之前在學校中學的都是用微軟的一套東西,sql server,linq這些和.net搭配起來倒是很簡單,不過也好,順便也學下mysql與c#互動是怎麼一回事,在網上找了很久,得到幾個思路:

使用nhibernate--推薦

mysqlhelper

後來發現nhibernate其實也挺複雜啊,還是像以前那樣直接寫**好。在csdn上面發帖,得到了幾個答覆,看了幾篇帖子,總算讓資料連線上了。

很不錯的方法介紹:

using system;using system.data;using system.configuration;using system.linq;using system.web;using system.web.security;using system.web.ui;using system.web.ui.htmlcontrols;using system.web.ui.webcontrols;using system.web.ui.webcontrols.webparts;using system.xml.linq;using mysql.data;using mysql.data.mysqlclient;///

///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命令

///oledb連線

///oledb事務

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

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

///執行命令的引數

private

static

void

preparecommand(mysqlcommand cmd, mysqlconnection conn, mysqltransaction trans, commandtype cmdtype, string cmdtext, mysqlparameter cmdparms)        }}

4、在使用時新增**

頁面上乙個gridview

d**.datasource = mysqlhelper.getdataset(mysqlhelper.conn, commandtype.text, "select * from ***x", null).tables[0].defaultview; //***為系統中的表        d**.databind();
5、在瀏覽器中檢視,前提是資料庫中有資料

如此就算是c#連線mysql成功了,這算是第一步。

給我老師的人工智慧教程打call!

C 連線MySQL資料庫

下面的 是乙個實現c 連線mysql資料庫的很好的例子 這裡用了建表,插入,檢索,刪表等常用功能 我用vc 6.0生成,已經成功連線了。在vc 6.0中要想把做一下兩步準備工作才可以。1 tools options directories include files中新增c program file...

C 連線 mysql資料庫

最近在學習使用資料庫進行c 開發專案的資料管理。學習了下sql server 和mysql的東西。這兩個比較相似,而且容易上手,準備以後用這個了。首先,使用c 連線資料庫,要有c 和資料庫之間通訊的介面。接下來,就是建立與資料庫的連線了。這裡使用的是連線字串。一開始學習,網上各種材料直接給出了像st...

C 連線MySql資料庫

然後新增mysqldata.dll到c 專案的引用中,然後就可以編寫程式進行資料庫的操作了。3 資料庫操作 insertmysql.csusing system using system.collections using system.linq using system.text using my...