MySQL基本造作与数据库DDL语言

MySQL操作

  • 进入mysql安装目录的bin目录,如:
  • cd e:\mysql\bin

进入mysql

mysql -u root -p

输入密码即可进去

修改密码

设置密码为123456

mysqladmin -u root -p password 123456

启动或关闭MySQL服务

启动

net start mysql

关闭

net stop mysql

MySQL目录结构

目录 作用
Bin mysql应用程序目录
Data 数据目录
Docs 文档
Include 头文件
Lib 库文件
Mysql-test 测试目录
Share 存放字符集及不同语言信息
Sql-bench 压力测试工具
Mydefault.ini mysql配置文件

备份与恢复

备份数据库

mysqldump -uroot -p123456 --database <数据库名> > f:\<数据库名>.sql

恢复数据库

mysql -uroot -p123456<f:<数据库名>.sql

存储引擎

查看存储引擎

Show engines

常见的三种存储引擎

  • Innodb

    • 数据完整性要求严格,支持事务和外键,读写速度一般,可以持久保存
  • Myisam

    • 不支持事务和外键,读写快,可以持久保存,对完整性没有要求
  • menory

    • 不支持事务和外键,读写快,不能持久保存,对完整性没有要求

DDL语言

  • 需要启动mysql在mysql>标签下执行

库操作

用utf-8创建库

扫描二维码关注公众号,回复: 2806837 查看本文章
Create database <数据库名> default charset utf8 collate utf8_general_ci;

查看系统中的所有数据库

SHOW databases

使用某个数据库

Use <数据库名>

删除数据库

DROP DATABASE <数据库名>

切换数据库

use <数据库名>;

表操作

查看数据库中的表

show tables;

查看表结构

desc <表名称>;

MySQL数据类型

类型 特性
INT 整形
FLOAT 单精度
DOUBLE 双精度
DATE 年月日,2018-01-01
DATETIME 年月日,时分秒,2018-01-01 12:01:01
TIMESTAMP 毫秒值的时间表达形式
VARCHAR 字符类型,括号中参数可以设置字符个数上限

约束种类

约束 作用
NOT NULL 不为空
NULL 可以为空
PRIMARY KEY 设置为主键
UNIQUE KEY 设置为唯一
AUTO_INCREMENT 设置为自增
DEFAULT 设置默认值
COMMENT’String’ 字段的注释
ENGINE 指定表的存储引擎

创建表

创建表

create table <表名称> ( id int,name varchar(10));

创建表并增加约束

CREATE TABLE <表名称> (
id INT(11) NOT NULL PRIMARY KEY,
NAME VARCHAR(10) NOT NULL UNIQUE KEY)

复制表

只复制表结构及约束,但不复制数据

CREATE TABLE <表名称> LIKE hero_table4

复制表结构及数据,但不复制约束

CREATE TABLE <表名称> AS SELECT * FROM hero_table4

修改表

Alter table <表名> <修改选项>

添加

添加字段

ALTER TABLE <表名称> ADD COLUMN <字段名> <字段类型> [约束条件]

添加索引

ALTER TABLE <表名称> ADD INDEX idx_<表名称>_<字段名> (<字段名>)

添加主键

ALTER TABLE <表名称> ADD PRIMARY KEY ( <设置为主键的字段> )

添加外键约束

ALTER TABLE <添加约束的表> ADD 
FOREIGN KEY fk_<添加约束的表名称>_<约束条件所在的表>(<需要约束的字段>) 
REFERENCES <约束条件所在的表>(约束的字段)
  • 设置一个表中的某一列中的数据必须来自于另一个表中的某一列
  • fk_<添加约束的表名称>_<约束条件所在的表>,这一段相当于为约束关系起的名字,可以随意但是推荐这种格式便于阅读

修改

修改表的名称

ALTER TABLE <表名称> RENAME <新的表名称>

修改字段名称
注意字段类型的兼容性及精度,除非该列全部数据为null

ALTER TABLE <表名称> CHANGE COLUMN <旧的字段名> <新的字段名> <字段类型>

修改字段类型
注意兼容性及精度,除非该列全部数据为null

ALTER TABLE <表名称> MODIFY COLUMN <字段名> <新的字段类型>

修改字段约束,设置默认值

ALTER TABLE <表名称> ALTER COLUMN <字段名> SET DEFAULT  <默认值>

删除

删除默认值

ALTER TABLE <表名称> ALTER COLUMN <字段名> DROP DEFAULT 

删除字段

ALTER TABLE <表名称> DROP COLUMN <字段名>

删除主键

ALTER TABLE <表名称> DROP PRIMARY KEY

删除索引

ALTER TABLE <表名称> DROP INDEX idx_<表名称>_<字段名>

删除外键约束

ALTER TABLE <表名称> DROP FOREIGN KEY fk_<表名称>_<约束表名称>
  • fk_<表名称>_<约束表名称> 约束关系的名字

删除表

DROP TABLE <表名称>

禁用启用

禁用约束

ALTER TABLE <表名称> DISABLE KEYS

启用约束

ALTER TABLE <表名称> ENABLE KEYS

猜你喜欢

转载自blog.csdn.net/liuchonghua/article/details/81464176
今日推荐