首页 > 代码库 > MySQL常用命令
MySQL常用命令
SQL(Structure Query Language 结构化查询语言)
1、数据定义语言(Data Definition Language, DDL)
数据库管理系统提供了数据定义语言定义数据库涉及各种对象,定义数据的完整性约束、保密限制等约束
2、数据操作语言(Data Manipulation Language, DML)
检索(查询)和更新(插入、删除、更新)
3、数据控制语言(Data Control Language, DCL)
数据完整性控制、数据安全性控制和数据库的恢复等。
MySQL的各种版本:
社区版(Community)和企业版(Enterprise)
GA(General Availability):官方推崇广泛使用的版本
RC(Release Candidate):候选版本,最接近正式版的版本
Alpha和Bean都属于测试版本,其中Alpha是指内测版本,Bean是指公测版本
系统数据库:
information_schema: 主要存储系统中的一些数据库对象信息,如用户表信息、列信息、权限信息、字符集信息和分区信息等
performance_schema:主要存储数据库服务器性能参数
mysql:主要存储系统的用户权限信息
test:该数据库为MySQL数据库管理系统自动创建的测试数据库任何用户都可以使用
CREATE DATABASE zt001;
SHOW DATABASES;
USE zt001;
DROP DATABASE zt001;
SHOW ENGINES \G
存储引擎分别为:FEDERATED, MRG_MYISAM, MyISAM, BLACKHOLE,CSV,MEMORY,ARCHIVE, InnoDB, PERFORMANCE_SCHEMA . 其中Enginge参数表示存储引擎名称;Support参数表示MySQL数据库管理系统是否支持该存储引擎,DEFAULT表示该存储引擎是数据库管理系统默认的存储引擎,Comment参数表示关于存储引擎的评论;Transactions参数表示存储引擎是否支持事务,XA参数表示存储引擎所支持的分布式是否符合XA规范,Savepoints参数表示存储引擎是否支持事务处理中的保存点。
SHOW VARIABLES LIKE ‘have%‘; //查看支持的存储引擎
SHOW VARIABLES LIKE ‘storage_engine%‘; //查询默认存储引擎
MyISAM存储引擎:由于该存储引擎不支持事务、也不支持外键,所以访问速度比较快。因此对事物完整性没有要求并以访问为主的应用适合使用该存储引擎。
InnoDB存储引擎:由于该存储引擎在事务上具有优势,即支持具有提交、回滚和崩溃恢复能力的事务安装,所以比MyISAM存储引擎占用更多的磁盘空间。因此需要进行频繁的更新、删除操作,同时还对事务的完整性要求比较高,需要实现并发控制,此时适合使用该存储引擎。
MEMORY存储引擎:该存储引擎使用内存来存储数据,因此该存储引擎的数据访问速度快,但是安全上没有保障。如果应用中涉及数据比较小,需要快速进行访问,则适合使用该存储引擎。
CREATE DATABASE company;
USE company;
CREATE TABLE t_dept(
deptno INT,
dnmae VARCHAR(20),
loc VARCHAR(40)
);
DESCRIBE table_name;
SHOW CREATE TABLE table_name;
SHOW CREATE TABLE t_dept \G
DROP TABLE table_name;
ALTER TABLE old_table_name RENAME new_table_name; //修改表名
在表的最后一个位置增加字段:
ALTER TABLE table_name ADD 属性名 属性类型
ALTER TABLE t_dept ADD descri VARCHAR(20);
在表的第一个位置增加字段:
ALTER TABLE table_name ADD 属性名 属性类型 FIRST;
ALTER TABLE t_dept ADD descri VARCHAR(20) FIRST;
在表的指定字段之后增加字段
ALTER TABLE table_name ADD 属性名 属性类型 AFTER 属性名;
ALTER TABLE t_dept ADD descri VARCHAR(20) AFTER deptno;
删除字段:
ALTER TABLE table_name DROP 属性名
ALTER TABLE t_dept DROP deptno;
修改字段的数据类型:
ALTER TABLE table_name MODIFY 属性名 数据类型
ALTER TABLE t_dept MODIFY deptno VARCHAR(20);
修改字段的名字
ALTER TABLE table_name CHANGE 旧属性名 新属性名 旧数据类型
ALTER TABLE t_dept CHANGE loc location VARCHAR(40);
同时修改字段的名字和属性
ALTER TABLE table_name CHANGE 旧属性名 新属性名 新数据类型
ALTER TABLE t_dept CHANGE loc location VARCHAR(20);
修改字段的顺序
ALTER TABLE table_name MODIFY 属性名1 数据类型 FIRST|AFTER 属性名2
ALTER TABLE t_dept MODIFY loc VARCHAR(40) FIRST;
ALTER TABLE t_dept MODIFY deptno INT(11) AFTER dname;
MySQL常用命令