MySQL总结(三)DDL数据定义语言-详解

精选30+云产品,助力企业轻松上云!>>> hot3.png

1.DDL操作数据库

1.1 创建数据库

1.1.1 多种方式创建数据库

语句说明
CREATE DATABASE 数据库名称;创建数据库
CREATE DATABASE IF NOT EXISTS 数据库名称;判断数据库是否已经存在,不存在则创建数据库
CREATE DATABASE 数据库名 CHARACTER SET 字符集创建数据库并指定字符集

注: 按tab键可以自动补全关键字,多次按tab键可以切换相似关键字

每行语句需要选中后再执行,可以选中后按F9快捷键执行

1.1.2 具体操作

-- 直接创建数据库db1;
create database db1;

-- 判断数据库是否存在,如果不存在则创建数据库db2;
create database if not exists db2;

-- 创建数据库并指定字符集为gbk;
create database db3 default character set gbk;

1.2 查看数据库

后面创建完成后需要刷新mysql服务器就可以看到了

-- 查看所有的数据库
show database;

-- 查看某个数据库的定义信息
show create database db3;
show create database db1;

1.3 修改数据库

1.3.1 修改数据库默认的字符集

ALTER DATABASE 数据库名 DEFAULT CHARACTER SET 字符集;

1.3.2 具体操作

  • 将db3数据库的字符集改为utf8
ALTER DATABASE db3 DEFAULT CHARACTER SET utf8;

1.4 删除数据库

1.4.1 删除数据库的语法

DROP DATABASE 数据库名;

1.4.2 具体操作

  • 删除db2数据库
DROP DATABASE db2;

1.5 使用数据库

1.5.1 查看正在使用的数据库

SELECT DATABASE(); 使用的一个mysql中的全局函数

1.5.2 使用/切换数据库

USE 数据库名;

1.5.3 具体操作

-- 查看正在使用的数据库
SELECT DATABASE();

-- 切换要使用的数据库
USE db4;

2.DDL操作表结构

操作某个数据库下的表

2.1 创建表

2.1.1 创建表语句格式

-- 创建表的格式
CREATE TABLE 表名(
  字段名1 字段类型1,
  字段名2 字段类型2
);

2.1.2 关键字说明

关键字说明
create创建
table

2.2 MySQL数据类型

2.2.1 常使用的数据类型

类型说明
int整型
double浮点型
varchar字符串型
date日期类型,格式为yyyy-MM-dd,只有年月日,没有时分秒

2.2.2 详细数据类型

2.2.2.1 整数
类型名称类型说明
tinyInt微整形:很小的整数(占8位二进制)
smallint小整形:小的整数(占16位二进制)
int(Integer)整型:整数类型(占32位二进制)
2.2.2.2 小数
类型名称类型说明
float单精度浮点数,占4个字节
double双精度浮点数,占8个字节
2.2.2.3 日期
类型名称类型说明
time时间类型
date日期类型
datetime同时表示日期和时间类型
2.2.2.4 字符串
类型名称类型说明
char(x)固定长度的字符串,无论使用几个字符都占满全部,x为0~255之间的整数
varchar(x)可变长度的字符串,使用几个字符就占用几个,x为0~65535之间的整数
2.2.2.5 大二进制
类型名称类型说明
tinyblob允许长度0~255 字节
blob允许长度0~65535 字节
mediumblob允许长度0~167772150 字节
longblob允许长度 0~4294967295 字节
2.2.2.6 大文本
类型名称类型说明
tinytext允许长度 0~255 字节
text允许长度 0~65535 字节
mediumtext允许长度 0~167772150 字节
longtext允许长度 0~4294967295 字节

2.2.3 具体操作

  • 创建student表包含id,name,birthday 字段
CREATE TABLE student(
  id INT, -- 整数
  `name` VARCHAR(12), -- 字符串
  birthday DATE -- 生日,最后没有逗号
);

2.3 查看表

2.3.1 查看某个数据库中的所有表

show tables;

2.3.2 查看表结构

desc 表名;

2.3.3 具体操作

  • 查看db1 数据库中所有表
use db1;
show tables;
  • 查看student表的结构
desc student;
  • 查看student的创建表SQL语句
show create table student;

2.4 快速创建一个表结构相同的表

2.4.1 语法

CREATE TABLE 新表明 LIKE 旧表名;

2.4.2 具体操作

  • 创建s1表,s1表结构和student表结构相同
-- 创建一个s1的表和student结构相同
create table s1 like student;
desc s1;

2.5 删除表

2.5.1 直接删除表

DROP TABLE 表名;

2.5.2 判断是否存在,如果存在则删除表

DROP TABLE IF EXISTS 表名;

2.5.3 具体操作

-- 直接删除s1表;如果表不存在,出现错误
drop table s1;

-- 判断表是否存在,并删除s1表;如果表不存在,不删除(无错误)
drop table if exists s1;

与直接删除的区别, 如果表不存在,不删除,存在则删除

2.6 修改表结构

2.6.1 添加表列ADD

  • 格式
ALTER TABLE 表名 ADD 列名 类型;
  • 为学生表添加一个新的字段remark,类型为varchar(20)
ALTER TABLE student ADD remark VARCHAR(20);

2.6.2 修改列类型MODIFY

  • 格式
ALTER TABLE 表名 MODIFY 列名 新的类型;
  • 将student表中的remark字段的类型改为varchar(100)
ALTER TABLE student MODIFY remark VARCHAR(100);

2.6.3 修改列名CHANGE

  • 格式
ALTER TABLE 表名 CHANGE 旧列名 新列名 类型;
  • 将student表中的remark字段名改为intro,类型为varchar(30);
ALTER TABLE student CHANGE remark intro VARCHAR(30)

2.6.4 删除列DROP

  • 格式
ALTER TABLE 表名 DROP 列名;
  • 删除student表中的字段intro
ALTER TABLE student DROP intro;

2.6.5 修改表名TO

  • 格式
ALTER TABLE 表名 TO 新表名;
  • 将学生表student名称改为student2
ALTER TABLE student TO student2;

2.6.6 修改字符集CHARACTER SET 字符集

  • 格式
ALTER TABLE 表名 CHARACTER SET 字符集;
  • 将student2表的编码修改为gbk
ALTER TABLE student2 CHARACTER SET gbk;

OK,这篇就到这里

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值