mysql学习笔记(5-DDL命令)
服务器端命令:DDL:数据定义语言,主要用于管理数据库组件,例如表、索引、视图、用户、存储过程
CREATE、ALTER、DROP
DML:数据操纵语言,主要用管理表中的数据,实现数据的增、删、改、查;
INSERT, DELETE, UPDATE, SELECT
获取命令帮助:
mysql> helpKEYWORD
数据库管理:
创建:
CREATE{DATABASE | SCHEMA}db_name;
CHARACTER SET [=] charset_name
COLLATE [=] collation_name
创建表:
CREATE TABLE tb_name (col1_def, col2_def, PRIMARY KEY(col_name,...), UNIQUE (col1,...), INDEX (col1,...))
使用示例:
MariaDB > CREATE DATABASE data1 CHARSET 'UTF8'; 查看支持的所有字符集:SHOW CHARACTER SET
查看支持的所有排序规则:SHOWCOLLATION
修改:
ALTER {DATABASE | SCHEMA}
CHARACTER SET [=] charset_name
COLLATE [=] collation_name
示例:
MariaDB > ALTER DATABASE data1 CHARSET 'latin2' COLLATE 'latin2_bin'; 删除:
DROP {DATABASE | SCHEMA} db_name
MariaDB > DROP DATABASE data1;
Query OK, 0 rows affected (0.00 sec)
查看:
SHOW DATABASES LIKE’‘;
MariaDB > SHOW DATABASES LIKE 'data%'; # %任意长度的任意字符
+------------------+
| Database (data%) |
+------------------+
| data1 |
+------------------+
1 row in set (0.00 sec)
MariaDB > SHOW DATABASES LIKE 'data_'; # _代表单个字符
表管理:
创建:
CREATE TABLEtbl_name(create_defination)
create_defination:
字段:col_namedata_type
键:
PRIMARY KEY (col1, col2, ...)
UNIQUE KEY(col1, col2,...)
FOREIGN KEY (column)
索引:
KEY|INDEX(col1, col2,...)
CREATE TABLE t1 (id int unsigned auto_increment primary key not null,name char(5) not null); table_options:
ENGINE [=] engine_name
查看数据库支持的所有存储引擎类型:
mysql> SHOWENGINES;
查看某表的存储引擎类型:
mysql> SHOWTABLESSTATUS
第二种创建方式:
复制表结构;
CREATE TABLE tbl_name
{ LIKE old_tbl_name | (LIKE old_tbl_name) }
注意:Storage Engine是指表类型,也即在表创建时指明其使用的存储引擎;
同一个库中表要使用同一种存储引擎类型;
修改:
ALTER TABLE tbl_name[alter_specification [,> alter_specification:
字段:
添加:ADDcol_namedata_type
删除:DROP col_name
修改:
CHANGE old_col_name new_col_name column_definition
MODIFY col_name column_definition
键:
添加:ADD{PRIMARY|UNIQUE|FOREIGN}KEY (col1, col2,...)
删除:
主键:DROP PRIMARY KEY
外键:DROP FOREIGN KEY fk_symbol
索引:
添加:ADD {INDEX|KEY} (col1, col2,...)
删除:DROP {INDEX|KEY}index_name
表选项:
ENGINE [=] engine_name
查看表上的索引的信息:
mysql> SHOW INDEXES FROM tbl_name;
删除:
DROPTABLE tbl_name [, tbl_name] ...
表的引用方式:
tbl_name
db_name.tbl_name
索引:要有索引名称;
创建:
CREATE INDEXindex_nameON tbl_name (col1, col2,,...)
删除:
DROPINDEX index_name ON tbl_name
页:
[1]