一、連接mysql、修改密碼
# 連接mysql數據庫
mysql -u root -p123456 # 本地連接mysql
mysql -h 192.168.0.10 -P 3306 -u root -p123456 # 遠程連接mysql
# 修改密碼
set password for root@localhost=password('123456');
# 使用root創建用戶chushiyan、設置密碼,將test庫所有權限授予chushiyan:
create user chushiyan identified by 'chushiyan';
grant all on test.* to chushiyan;
二、mysql數據庫、表、行的增刪改查語法總結
|
database |
table |
row |
增 |
①create database test; ②create database test character set GBK; ③create database mydb2 character set GBK collate gbk_chinese_ci;
④ drop database if exists test; create database test character set utf8 ;
|
① create table person( id int primary key auto_increment, name varchar(40) unique, age smallint, salary double );
|
①insert into person(id,name,age,salary)values(null,'劉備',40,5000);
②insert into person values(null,’孔明’,35,4500);
③insert into person values(null,’關羽’,25,4000),(null,’張飛’,25,4000);
|
刪 |
① drop database test;
② drop database if exists test;
|
①drop table employee; |
①delete from person where id=1; ②delete from person; ③truncate table person; |
改 |
① alter database test character set gbk; |
①alter table person add image blob; ②alter table person modify name varchar(60); ③alter table person drop age; ④rename table person to user; ⑤alter table user character set gbk; ⑥alter table user change name username varchar(20);
|
①update person set salary=40000;
②update person set salary = 60000 where name='劉備';
③update employee set salary=4000,age=24 where name='關羽';
④update employee set salary=salary+1000 where name='劉備'; |
查 |
①show databases;
②show create database test; |
①desc person;
②show tables;
③show create table person; |
1、基本查詢 ①select * from exam; ②select name,english from exam ③select distinct english from exam; ④select name , math+10,english+10,chinese+10 from exam; ⑤select name ,english+math+chinese from exam; ⑥select name as 姓名 ,english+math+chinese as 總成績 from exam; ⑦select name 姓名 ,english+math+chinese 總成績 from exam;
2、使用where過濾查詢 ①select * from exam where name='張飛'; ②select * from exam where english > 90; ③select name 姓名,math+english+chinese 總分 from exam where math+english+chinese>230; ④select * from exam where english between 80 and 100; ⑤select * from exam where math in(75,76,77); ⑥select * from exam where name like '張%'; ⑦select * from exam where math>70 and chinese>80;
3、使用order by關鍵字對查詢結果排序 ①select name,chinese from exam order by chinese desc; ②select name 姓名,chinese+math+english 總成績 from exam order by 總成績 desc; ③select name 姓名,chinese+math+english 總成績 from exam where name like '張%' order by 總成績 desc;
4、聚合函數 (1)count ①select count(*) from exam; ②select count(*) from exam where math>70; ③select count(*)from exam where math+english+chinese > 230; (2)sum ①select sum(math) from exam; ②select sum(math),sum(english),sum(chinese) from exam; ③select sum(ifnull(chinese,0)+ifnull(english,0)+ ifnull(math,0)) from exam; ④select sum(chinese)/count(*) 語文平均分 from exam;
(3)avg ①select avg(math) from exam; ②select avg(ifnull(chinese,0)+ifnull(english,0)+ ifnull(math,0)) from exam;
(4)max/min ①select max(ifnull(chinese,0)+ifnull(english,0)+ ifnull(math,0)) from exam; ②select min(ifnull(chinese,0)+ifnull(english,0)+ ifnull(math,0)) from exam;
5、分組查詢 ①select product,sum(price) from orders group by product; ②select product 商品名,sum(price)商品總價 from orders group by product having sum(price)>100; ③select product from orders where price<100 group by product having sum(price)>150;
|