可以使用mysql推出的mysqlconnector/net組件,該組件是mysql為ado.net訪問(wèn)mysql數(shù)據(jù)庫(kù)設(shè)計(jì)的.net專用訪問(wèn)組件,完成該組件后,需要在項(xiàng)目中引用這個(gè)組件,之后在程序中引用命名空間mysql.data.mysqlclient,即可開(kāi)始進(jìn)行連接mysql數(shù)據(jù)庫(kù)的操作了,示例如下:
公司主營(yíng)業(yè)務(wù):成都做網(wǎng)站、成都網(wǎng)站制作、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。創(chuàng)新互聯(lián)推出武清免費(fèi)做網(wǎng)站回饋大家。
protected
voidmysqlcon()
{
//數(shù)據(jù)庫(kù)連接字符串跟連接sqlserver沒(méi)有區(qū)別
string
constr
=
"server=localhost;userid=root;password=root;database=test";
//下面使用mysql
connector/net提供的專用對(duì)象
mysqlconnection
mycon
=
new
mysqlconnection(constr);
mycon.open();
mysqlcommandmycmd
=
new
mysqlcommand("select
*
from
users",
mycon);
mysqldatareader
myreader
=
mycmd.executereader();
while
(myreader.read())
{
if
(myreader.hasrows)
{
messagebox.show(myreader.getstring("email")
);
}
}
myreader.close();
mycon.close();
你好,
方法/步驟
1
登陸mysql
打cmd命令終端,如果已經(jīng)添加了mysql的環(huán)境變量,可以直接使用命令
mysql -uroot
直接回車,之后按提示輸入密碼,
如果未添加mysql的環(huán)境變量,可以切換到mysql的安裝目錄下的bin目錄,再使用
mysq -uroot
你也可以手動(dòng)為mysql添加環(huán)境變量。這里就不介紹怎么添加環(huán)境變量的方法了
密碼輸入正確之后,就會(huì)出現(xiàn)“Welcome to the MySQL monitor. Commands end with ; or \g. ......”字樣,
命令行出現(xiàn)“mysql”字符前綴?,F(xiàn)在你就可以使用命令對(duì)mysql進(jìn)行操作了。曾經(jīng)有沒(méi)有過(guò)這樣的經(jīng)歷,原來(lái)看見(jiàn)別人在命令行里面咔咔的猛敲時(shí),就一通的崇拜,覺(jué)得這人很牛,現(xiàn)在你也可以讓別一通崇拜了。
mysql的所有命令都以";"或者\(yùn)g為結(jié)束符
2
新建數(shù)據(jù)庫(kù)
在新建數(shù)據(jù)庫(kù)之后,我們先設(shè)置一下字符集
mysqlSET NAMES utf8;
然后再創(chuàng)建數(shù)據(jù)庫(kù)
mysqlCREATE DATABASE lesson
3
顯示所有數(shù)據(jù)庫(kù)
mysqlSHOW DATABASES;
4
使用數(shù)據(jù)庫(kù)
mysqlUSE 數(shù)據(jù)庫(kù)名;
5
新建表
mysqlCREATE TABLE study(
id int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '學(xué)生id號(hào)',
username varchar(30) NOT NULL DEFAULT '' COMMENT '學(xué)生名字',
class tinyint(3) unsigned NOT NULL,
sex enum('男','女','保密') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '保密' COMMENT '性別',
addtime int(10) NOT NULL DEFAULT '0',
PRIMARY KEY (id)
)ENGINE=InnoDB COMMENT = '學(xué)生表';
6
顯示所有表
mysqlSHOW TABLES;
7
修改表的名稱
mysqlRENAME TABLE study TO study_new ;
或者
mysqlALTER TABLE study_new RENAME TO study;
8
顯示字段信息
SHOW COLUMNS FROM study或者DESCRIBE study
9
插入數(shù)據(jù)
mysql insert into study (username,class,sex)VALUES('小王',1,'男'),('小四',2,'女');
10
查詢數(shù)據(jù)(使concat函數(shù)拼接數(shù)據(jù))
mysql SELECT username,CONCAT(class,'班'),sex FROM study;
11
刪除數(shù)據(jù)
mysqlDELETE FROM study WHERE id=1;
12
刪除數(shù)據(jù)表
DROP TABLE study;
13
刪除數(shù)據(jù)庫(kù)
mysql DROP DATABASE lesson;
方法/步驟
1
新建一個(gè)工程名叫mysql,編程環(huán)境選擇c#,然后選擇windows窗體應(yīng)用程序,新建一個(gè)窗體用于顯示查詢到sql數(shù)據(jù)庫(kù)的數(shù)據(jù)集
2
從工具箱向form1窗體上拖一個(gè)按鈕和datagridview控件,按鈕是觸發(fā)連接數(shù)據(jù)庫(kù)獲取數(shù)據(jù)集,按鈕的名稱為顯示,datagridview控件是用于顯示數(shù)據(jù)集內(nèi)容
3
單擊解決方案資源管理器中的引用文件夾然后右鍵選擇添加引用,選擇瀏覽后打開(kāi)mysql.data.dll,這是c#連接mysql數(shù)據(jù)庫(kù)的動(dòng)態(tài)庫(kù),里面封裝了很多常用的操作數(shù)據(jù)庫(kù)的方法
4
在解決方案資源管理器中的form1.cs的代碼中加入using MySql.Data.MySqlClient;這就是代碼中的實(shí)際引用mysql.data.dll中的內(nèi)容,有了這個(gè)c#就能很方便地操作sql數(shù)據(jù)庫(kù)
5
在按鈕的單擊事件中添加如下代碼
string str = "Server=127.0.0.1;User ID=root;Password=123456;Database=test;CharSet=gbk;";
MySqlConnection con = new MySqlConnection(str);//實(shí)例化鏈接
con.Open();//開(kāi)啟連接
string strcmd = "select * from user";
MySqlCommand cmd = new MySqlCommand(strcmd, con);
MySqlDataAdapter ada = new MySqlDataAdapter(cmd);
DataSet ds = new DataSet();
ada.Fill(ds);//查詢結(jié)果填充數(shù)據(jù)集
dataGridView1.DataSource = ds.Tables[0];
con.Close();//關(guān)閉連接
6
使用navicat軟件在數(shù)據(jù)庫(kù)test中新建表user,然后新建兩個(gè)字段username和password(圖中的欄位),navicat軟件是mysql的圖形化界面工具,負(fù)責(zé)新建表以及備份等數(shù)據(jù)庫(kù)操作,直觀地通過(guò)界面來(lái)操作
7
數(shù)據(jù)庫(kù)建好后就可以執(zhí)行工程了,單擊顯示按鈕執(zhí)行結(jié)果如下,出現(xiàn)username和password說(shuō)明數(shù)據(jù)庫(kù)連接成功,由于沒(méi)有添加數(shù)據(jù)所以下面為空
mysql基本操作有:
命令行
1、顯示當(dāng)前數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)列表:mysql SHOW DATABASES;
2、建立數(shù)據(jù)庫(kù):mysql CREATE DATABASE 庫(kù)名;
3、建立數(shù)據(jù)表:mysql USE 庫(kù)名;mysql CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));
4、刪除數(shù)據(jù)庫(kù):mysql DROP DATABASE 庫(kù)名;
5、刪除數(shù)據(jù)表:mysql DROP TABLE 表名;
6、將表中記錄清空:mysql DELETE FROM 表名;
7、往表中插入記錄:mysql INSERT INTO 表名 VALUES ("hyq","M");
8、更新表中數(shù)據(jù):mysql- UPDATE 表名 SET 字段名1='a',字段名2='b' WHERE 字段名3='c';
9、用文本方式將數(shù)據(jù)裝入數(shù)據(jù)表中:mysql load data local infile "d:/mysql.txt" into table 表名;
10、導(dǎo)入.sql文件命令:mysql USE 數(shù)據(jù)庫(kù)名;mysql source d:/mysql.sql;
11、命令行修改root密碼:mysql update mysql.user set password=password('新密碼') where user='root';mysql flush privileges;
12.修改密碼的三種方法:mysqlupdate user set password=password('123456') where user='joy_pen';mysqlflush privileges;mysqlset password for 'joy_oen'=password('123456');mysqlgrant usage on *.* to 'joy_pen' identified by '123456';
1、創(chuàng)建數(shù)據(jù)庫(kù)
命令:create database 數(shù)據(jù)庫(kù)名 例如:建立一個(gè)名為xhkdb的數(shù)據(jù)庫(kù)mysql create database xhkdb;
2、顯示所有的數(shù)據(jù)庫(kù)
命令:show databases (注意:最后有個(gè)s)mysql show databases;
3、刪除數(shù)據(jù)庫(kù)
命令:drop database 數(shù)據(jù)庫(kù)名 例如:刪除名為 xhkdb的數(shù)據(jù)庫(kù)mysql drop database xhkdb;
4、連接數(shù)據(jù)庫(kù)
命令: use 數(shù)據(jù)庫(kù)名 例如:如果xhkdb數(shù)據(jù)庫(kù)存在,嘗試存取它:mysql use xhkdb; 屏幕提示:Database changed
5、當(dāng)前選擇(連接)的數(shù)據(jù)庫(kù)mysql select database();
6、當(dāng)前數(shù)據(jù)庫(kù)包含的表信息:mysql show tables; (注意:最后有個(gè)s)
三、表操作,操作之前應(yīng)連接某個(gè)數(shù)據(jù)庫(kù)
1、建表
命令:create table 表名 ( 字段名1 類型1 [,..字段名n 類型n]);
mysql create table MyClass(
id int(4) not null primary key auto_increment,
name char(20) not null,
sex int(4) not null default ''0'',
degree double(16,2));
2、獲取表結(jié)構(gòu)
命令: desc 表名,或者show columns from 表名
mysqlDESCRIBE MyClass
mysql desc MyClass;
mysql show columns from MyClass;
3、刪除表
命令:drop table 表名
例如:刪除表名為 MyClass 的表 mysql drop table MyClass;
4、插入數(shù)據(jù)
命令:insert into 表名 [( 字段名1[,..字段名n ])] values ( 值1 )[, ( 值n )]
例如,往表 MyClass中插入二條記錄, 這二條記錄表示:編號(hào)為1的名為T(mén)om的成績(jī)?yōu)?6.45, 編號(hào)為2 的名為Joan 的成績(jī)?yōu)?2.99,編號(hào)為3 的名為Wang 的成績(jī)?yōu)?6.5.
mysql insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);
5、查詢表中的數(shù)據(jù)
1)、查詢所有行
命令: select 字段1,字段2,... from 表名 where 表達(dá)式
例如:查看表 MyClass 中所有數(shù)據(jù) mysql select * from MyClass;
2)、查詢前幾行數(shù)據(jù)
例如:查看表 MyClass 中前2行數(shù)據(jù)
mysql select * from MyClass order by id limit 0,2;
6、刪除表中數(shù)據(jù)
命令:delete from 表名 where 表達(dá)式
例如:刪除表 MyClass中編號(hào)為1 的記錄
mysql delete from MyClass where id=1;
7、修改表中數(shù)據(jù):update 表名 set 字段=新值,… where 條件
mysql update MyClass set name=''Mary'' where id=1;
8、在表中增加字段:
命令:alter table 表名 add 字段 類型 其他;
例如:在表MyClass中添加了一個(gè)字段passtest,類型為int(4),默認(rèn)值為0
mysql alter table MyClass add passtest int(4) default ''0''
9、更改表名:
命令:rename table 原表名 to 新表名;
例如:在表MyClass名字更改為YouClass
mysql rename table MyClass to YouClass;
更新字段內(nèi)容
update 表名 set 字段名 = 新內(nèi)容
update 表名 set 字段名 = replace(字段名,''舊內(nèi)容'',''新內(nèi)容'');