整理Mysql 語句

查看mysql支持的存儲引擎:
show engines;
查看當前默認的存儲引擎:
show variables like '%storage_engine%';

查看庫中全部表使用的存儲引擎
Show table status from db_name;
查看庫中指定表的存儲引擎
show table status like ‘tb_name‘;
show create table tb_name;
設置表的存儲引擎:
ALTER TABLE tb_name ENGINE=InnoDB;

****SQL語句分類:****
******DDL: Data Defination Language******
********CREATE, DROP, ALTER********

查看數據庫列表:
SHOW DATABASES;
查看庫中全部表狀態:SHOW TABLE STATUS FROM db_name

建立數據表
CREATE TABLE [IF NOT EXISTS] ‘tbl_name’ (col1 type1修飾符, col2 type2 修飾符, ...)

ALTER TABLE 'tbl_name'字段:
添加字段:add
ADD col1 data_type [FIRST|AFTER col_name] 刪除字段:drop 修改字段:
alter(默認值), change(字段名), modify(字段屬性) 索引: 添加索引:add index 刪除索引: drop index 表選項
修改:
查看錶上的索引:SHOW INDEXES FROM [db_name.]tbl_name;

查看錶上的索引:SHOW INDEXES FROM [db_name.]tbl_name;

示例:

建立表
CREATE TABLE students (id int UNSIGNED NOTNULL PRIMARY KEY,name VARCHAR(20)NOTNULL,age tinyint UNSIGNED);

修改表
ALTER TABLE s1 ADD phone varchar(11) AFTERname;

******DML: Data Manipulation Language******
INSERT, DELETE, UPDATE

UPDATE [LOW_PRIORITY] [IGNORE] table_reference
SET col_name1={expr1|DEFAULT} [, col_name2={expr2|DEFAULT}] ...
[WHERE where_condition]
[ORDER BY ...]
[LIMIT row_count]

注意:必定要有限制條件,不然將修改全部行的指定字段
限制條件: WHERE
LIMIT

示例:

向表插入語句:
INSERT INTO students(id,name) VALUES(3,'jack'),(4,'allen');
SELECT * FROM students ORDER BY name DESC LIMIT 1,2;

******DCL:Data Control Language******
GRANT, REVOKE

GRANT priv_type [(column_list)],... ON [object_type] priv_level TO 'user'@'host' [IDENTIFIED BY 'password'] [WITH GRANT OPTION];

回收受權:REVOKE priv_type [(column_list)] [, priv_type [(column_list)]] ... ON [object_type] priv_level FROM user [, user] ...

示例:

授予權限:
GRANT SELECT (col1), INSERT (col1,col2) ON mydb.mytbl TO 'someuser'@'somehost';
回收權限:

REVOKE DELETE ON testdb.* FROM 'testuser'@'%‘

******DQL:Data Query Language******
SELECT

內鏈接有以下三種:
等值鏈接:讓表之間的字段以「等值」創建鏈接關係;
天然鏈接:等值鏈接不將重複屬性去掉,而天然鏈接去掉重複屬性,也能夠說,天然鏈接是去掉重複列的等值鏈接。
不等值鏈接:等值鏈接:主要用除了等號以外的操做符,好比:<>、>、<、>=、<=、LIKE、IN、BETWEEN…AND。
整理Mysql 語句mysql

相關文章
相關標籤/搜索