MySQL之DDL操作数据表

1 MySQL常见的数据类型

1)常用的数据类型:

类型描述
int整型
double浮点型
varchar字符串型
date日期类型,给是为 yyyy-MM-dd ,只有年月日,没有时分秒

2) 详细的数据类型(了解即可)

注意:MySQL中的 char类型与 varchar类型,都对应了 Java中的字符串类型,区别在于:

  • char类型是固定长度的: 根据定义的字符串长度分配足够的空间。
  • varchar类型是可变长度的: 只使用字符串长度所需的空间

比如:保存字符串 "abc"

x char(10) 占用10个字节
y varchar(10) 占用3个字节

适用场景:

  • char类型适合存储 固定长度的字符串,比如 密码 ,性别一类
  • varchar类型适合存储 在一定范围内,有长度变化的字符串
     

2 创建表

  • 语法格式:
CREATE TABLE 表名(
字段名称1 字段类型(长度),
字段名称2 字段类型 注意 最后一列不要加逗号
);
  • 需求1: 创建商品分类表
表名:category
表中字段:
分类ID :cid ,为整型
分类名称:cname,为字符串类型,指定长度20
  • SQL实现
-- 切换到数据库 db1
USE db1;
-- 创建表
CREATE TABLE category(
cid INT,
cname VARCHAR(20)
);
  • 需求2: 创建测试表
表名: test1
表中字段:
测试ID : tid ,为整型
测试时间: tdate , 为年月日的日期类型
  • SQL实现
-- 创建测试表
CREATE TABLE test1(
tid INT,
tdate DATE
);
  • 需求3: 快速创建一个表结构相同的表(复制表结构)
  • 语法格式:
create table 新表明 like 旧表名
  • 代码示例:
-- 创建一个表结构与 test1 相同的 test2表
CREATE TABLE test2 LIKE test1;
-- 查看表结构
DESC test2;

3 查看表

命令说明
show tables;查看当前数据库中的所有表名
desc 表名;查看数据表的结构
  • 代码示例:
-- 查看当前数据库中的所有表名
SHOW TABLES;
-- 显示当前数据表的结构
DESC category;
-- 查看创建表的SQL语句
SHOW CREATE TABLE category;

4 删除表

命令说明
drop table 表名;删除表(从数据库中永久删除某一张表)
drop table if exists 表名;判断表是否存在, 存在的话就删除,不存在就不执行删除
  • 代码示例:
-- 直接删除 test1 表
DROP TABLE test1;
-- 先判断 再删除test2表
DROP TABLE IF EXISTS test2;

5 修改表

1)修改表名

  • 语法格式
rename table 旧表名 to 新表名
  • 需求: 将category表 改为 category1
RENAME TABLE category TO category1;

2) 修改表的字符集

  • 语法格式
alter table 表名 character set 字符集
  • 需求: 将category表的字符集 修改为gbk
alter table category character set gbk;

3)向表中添加列, 关键字 ADD

  • 语法格式:
alert table 表名 add 字段名称 字段类型
  • 需求: 为分类表添加一个新的字段为 分类描述 cdesc varchar(20)
# 为分类表添加一个新的字段为 分类描述 cdesc varchar(20)
ALTER TABLE category ADD cdesc VARCHAR(20);

4)修改表中列的 数据类型或长度 , 关键字 MODIFY

  • 语法格式:
alter table 表名 modify 字段名称 字段类型
  • 需求:对分类表的描述字段进行修改,类型varchar(50)
ALTER TABLE category MODIFY cdesc VARCHAR(50);

5)修改列名称 , 关键字 CHANGE

  • 语法格式
alter table 表名 change 旧列名 新列名 类型(长度);
  • 需求: 对分类表中的 desc字段进行更换, 更换为 description varchar(30)
ALTER TABLE category CHANGE cdesc description VARCHAR(30);

6)删除列 ,关键字 DROP

  • 语法格式
alter table 表名 drop 列名;
  • 需求: 删除分类表中description这列
ALTER TABLE category DROP description;

 

 

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值