SQL語句類型:
DDL:數(shù)據(jù)庫定義語言
create,drop,alter
DML:數(shù)據(jù)操作語言
insert,delete,update,select
DCL:數(shù)據(jù)控制語言
grant,revoke
常用SQL語句:
CREATE DATABASE #創(chuàng)建數(shù)據(jù)庫
CREATE TABLE #創(chuàng)建表
CREATE TABLE table_name(字段名,字段數(shù)據(jù)類型,約束條件) #創(chuàng)建表
CREATE INDEX #創(chuàng)建索引
數(shù)據(jù)類型:
×××:int
tinyint #1byte
smallint #2byte
mediumint #3byte
int #4byte
bigint #8byte
字符型:
char #固定長度字符型(不區(qū)分大小寫)
varchar #可變長度字符型(不區(qū)分大小寫)
binary #固定長度字符型(區(qū)分大小寫)
varbinary #可變長度字符型(區(qū)分大小寫)
約束條件:
NOT NULL #不允許為空
DEFAULT #默認(rèn)值
PRIMARY KEY #主鍵
UNIQUE KEY #唯一鍵
unsigned #無符號的(適用于int類型)
auto_increment #自增,需要定義在一個(gè)鍵中(適用于int類型)
使用實(shí)例:
show global variables; #查看全局參數(shù)
show session variables; #MySQL的當(dāng)前會(huì)話參數(shù)
show character set; #查看支持的字符集
show collation; #查看支持的排序規(guī)則
show engines; #查看支持的存儲(chǔ)引擎
show table status like 'user'\G; #查看表狀態(tài)
show global variables like '%server%'; #數(shù)據(jù)庫id
show master logs; #查看數(shù)據(jù)庫二進(jìn)制日志
show master status; #查看主服務(wù)器狀態(tài)
show grants for 'dj'@'localhost'; #查看dj用戶的授權(quán)信息
show index from mysql.user; #查看索引
show databases; #查看數(shù)據(jù)庫
show tables; #查看數(shù)據(jù)庫的表
select 字段名 from 表名 [where 查詢條件] #查看表中的內(nèi)容
select * from user\G; #查看用戶的詳細(xì)信息
select databese(); #查看默認(rèn)數(shù)據(jù)庫
select * from test where id>2 and id<4; #查詢test表中id大于2小于4的數(shù)據(jù)
where條件:
> < >= <= == != and or not
like:模糊查詢 rlike:基于正則表達(dá)式的模糊查詢
drop database 數(shù)據(jù)庫名; #刪除數(shù)據(jù)庫
drop table 表名; #刪除指定表
drop user '用戶名'@'主機(jī)'; #刪除用戶
update 表名 set 更改的值 where 條件匹配 #修改表中的數(shù)據(jù)
update test set name='huyuan' where id=2;
delete from 表名 where 條件條件 #刪除條件匹配的數(shù)據(jù)
delete from test where id=2;
insert into 表名(字段1,字段2) values(字段1的值,字段1的值)
insert into test(name) values('zhangtao');
insert into 表名 (字段1,字段2) select語句 #插入通過select查詢得到的數(shù)據(jù)
insert into user (user,host,passwd) select User,Host,Password from mysql.user;
grant 權(quán)限列表 on 數(shù)據(jù)庫.表 to '用戶名'@'授權(quán)主機(jī)' identified by '密碼'
#授權(quán)用戶
revoke drop on 數(shù)據(jù)庫.表 from '用戶名'@'授權(quán)主機(jī)'; #撤銷授權(quán)
altar table 表名 add 字段名 字符型 #添加字段
alter table test ip varchar;
altar table 表名 change 源名 修改后的名 字符型 #更改字段
alter table test change ip sid int;
altar table 表名 drop 字段名 #刪除字段
alter table test drop sid;
set global 變量名=值; #設(shè)置全局參數(shù)
set session 變量名=值; #設(shè)置當(dāng)前會(huì)話參數(shù)
use 數(shù)據(jù)庫名; #指定默認(rèn)數(shù)據(jù)庫
create index 索引名 on 表名; #創(chuàng)建索引
flush privileges; #重讀授權(quán)表
創(chuàng)建表的三種方式:
1、直接創(chuàng)建
create teble 表名 (字段名1 字段類型,字段名2 字段類型)
2、復(fù)制表和表中的數(shù)據(jù)
create teble 表名 select語句
例:create teble test select User,Host,Password from mysql.user;
3、復(fù)制表結(jié)構(gòu)
create teble tbl_name like 模板表
例:create teble test2 LIKE test
網(wǎng)站標(biāo)題:mysql基礎(chǔ)(二)常用SQL語句
網(wǎng)頁網(wǎng)址:
http://weahome.cn/article/ijppgd.html