一、數(shù)據(jù)庫(kù)連接1、通過(guò)命令行連接數(shù)據(jù)庫(kù)
[root@localhost ~]# mysql -u root -p
Enter password:
輸入以上命令,回車后輸入密碼,回車,出現(xiàn) mysql> 命令提示窗口則表示登錄成功,可以在mysql>下輸入任何sql語(yǔ)句。2、退出mysqlmysql> exit
Bye
二、創(chuàng)建數(shù)據(jù)庫(kù)語(yǔ)法:CREATE DATABASE <數(shù)據(jù)庫(kù)名>;
先連接mysql服務(wù)后,再使用sql語(yǔ)句。可以通過(guò)命令連接也可以通過(guò)客戶端工具例如navicat連接,以下創(chuàng)建一個(gè)庫(kù)名為lemon的數(shù)據(jù)庫(kù)mysql> create DATABASE lemon;
三、顯示數(shù)據(jù)庫(kù)語(yǔ)法:show databases;
示例:查看mysql服務(wù)所有數(shù)據(jù)庫(kù)mysql> show databases;
+--------------------+
Database
+--------------------+
information_schema
future
lemon
mysql
test
test_mysql
+--------------------+
四、刪除數(shù)據(jù)庫(kù)語(yǔ)法:drop database <數(shù)據(jù)庫(kù)名>;
drop刪除數(shù)據(jù)庫(kù)命令謹(jǐn)慎使用,一旦刪除,所有數(shù)據(jù)都沒有了。以下示例:刪除一個(gè)庫(kù)名為test的數(shù)據(jù)庫(kù)。mysql> drop DATABASE test;
五、選擇數(shù)據(jù)庫(kù)語(yǔ)法:use <數(shù)據(jù)庫(kù)名>;
示例:選取數(shù)據(jù)庫(kù)lemon進(jìn)行操作。mysql> use lemon;
Database changed
六、創(chuàng)建表語(yǔ)法:create table <表名> ( <字段名1> <類型1>,<字段名2> <類型2>, ...,<字段名n> <類型n>);
示例:需要?jiǎng)?chuàng)建一個(gè)學(xué)員信息表,用于存儲(chǔ)學(xué)號(hào)、姓名、性別、班級(jí)、年齡。create table student(
sno int(8) not null primary key auto_increment comment '學(xué)號(hào)',
sname varchar(20) NOT NULL comment '姓名',
ssex varchar(4) NOT NULL comment '性別',
sclass int(8) NOT NULL comment '班級(jí)',
sage int(4) NOT NULL comment '年齡'
)DEFAULT CHARSET=utf8;
解析:int為整型,這里學(xué)號(hào)sno、班級(jí)編號(hào)sclass設(shè)定為整型;varchar字符型,這里姓名sname、性別ssex、年齡sage設(shè)定為字符型;字段屬性設(shè)定為not null,表示字段值不允許空;primary key關(guān)鍵字用于定義列為主鍵。主鍵唯一、不重復(fù),一般以編號(hào)為主鍵;auto_increment定義列屬性為自增,一般用于主鍵,插入數(shù)據(jù)時(shí)數(shù)值會(huì)自動(dòng)加1;comment相當(dāng)于給列添加備注;DEFAULT CHARSET 設(shè)置編碼,utf8對(duì)傳值中文防止亂碼。七、顯示數(shù)據(jù)表mysql> show tables;
+----------------+
Tables_in_test
+----------------+
student
student1
+----------------+
八、查看表結(jié)構(gòu)九、刪除表語(yǔ)法:drop table <表名>;
drop刪除表請(qǐng)謹(jǐn)慎操作,因?yàn)閳?zhí)行刪除命令后該表及包含的數(shù)據(jù)都會(huì)消失。以下示例:刪除一個(gè)表名為student的數(shù)據(jù)表。mysql> drop table student;
十、插入表數(shù)據(jù)語(yǔ)法:insert into <表名> ( 字段名1,字段名2,...字段名N)
values
( 值1, 值2,...值N );
示例:1、往學(xué)員信息表中插入一條學(xué)員信息insert into student (sno,sname,ssex,sclass,sage) values (6301,'檸檬','女',20190163,18);
注意:如果數(shù)據(jù)值為字符型必須用單引號(hào)或者雙引號(hào)括起來(lái)。2、批量插入,插入多條學(xué)員信息insert into student (sname,ssex,sclass,sage)
values
('毛毛','女',20190163,20),('大大','女',20190163,22);
十一、修改表數(shù)據(jù)語(yǔ)法:update 表名 set 字段名1= 新值1,字段名2=新值2, … where 條件表達(dá)式1 and(or) 條件表達(dá)式2 …;
示例:修改學(xué)員姓名為毛毛的性別為男update student set ssex = '男' where sname = '毛毛';
十二、查詢單表數(shù)據(jù)語(yǔ)法:select 字段名1,字段名2,… from <表名> where 條件表達(dá)式1 and(or) 條件表達(dá)式2 … ;
1、查詢所有字段列信息示例:查詢student表中,性別女且年齡在20歲以上的學(xué)員信息select * from student where ssex = '女' and sage > 20;
2、查詢指定字段列信息示例:查詢student表中,性別女或者年齡在20歲以上的學(xué)員姓名select sname from student where ssex = '女' or sage > 20;
3、查詢前幾行信息示例:查詢student表中,性別女且年齡在20歲以上的前2行學(xué)員信息select sname from student where ssex = '女' or sage > 20 limit 0,2;
十三、查詢多表關(guān)聯(lián)數(shù)據(jù)語(yǔ)法:
1、關(guān)聯(lián)查詢:select 字段名1,… from 表名1,表名2,…where 關(guān)聯(lián)條件表達(dá)式 and 過(guò)濾條件表達(dá)式 …;
2、等值連接:select 字段名1,… from 表名1 inner join 表名2 on 關(guān)聯(lián)條件表達(dá)式 and 過(guò)濾條件表達(dá)式… ;
3、左連接:select 字段名1,… from 表名1 left join 表名2 on 關(guān)聯(lián)條件表達(dá)式 and 過(guò)濾條件表達(dá)式… ;
4、右連接:select 字段名1,… from 表名1 right join 表名2 on 關(guān)聯(lián)條件表達(dá)式 and 過(guò)濾條件表達(dá)式… ;
示例:1、以上左表user表,右表為左表的對(duì)象信息user_lover表,查詢兩表中存在對(duì)象關(guān)系的信息SELECT * FROM `user`, user_lover WHERE `user`.id = user_lover.u_id;
SELECT * FROM `user`INNER JOIN user_lover on `user`.id = user_lover.u_id;
運(yùn)行結(jié)果:2、讀取左表全部數(shù)據(jù),即使右表沒有關(guān)聯(lián)數(shù)據(jù)SELECT * FROM `user`LEFT JOIN user_lover on `user`.id = user_lover.u_id;
運(yùn)行結(jié)果:3、以右表為基礎(chǔ),與LEFT JOIN相反SELECT * FROM `user` RIGHT JOIN user_lover on `user`.id = user_lover.u_id;
運(yùn)行結(jié)果:十四、刪除表數(shù)據(jù)語(yǔ)法:delete from 表名 where 條件1 and(or) 條件2……;
示例:刪除student表中年齡小于18歲的用戶信息delete from student where sage < 18;
十五、mysql學(xué)習(xí)教程mysql官網(wǎng):https://dev.mysql.com/doc/http://runoob.com:https://www.runoob.com/mysql/w3cschool:https://www.w3cschool.cn/mysql/希望本文對(duì)你有用看完文章的朋友不要走,有問題可以給我留言,或者需要相關(guān)學(xué)習(xí)視頻也可以留言哦~