MySQL - DDL - 库的管理,表的管理,数据类型

库的管理

一、创建库

create databaseif not exists】 库名【 character set 字符集名】;

二、修改库

alter database 库名 character set 字符集名;

三、删除库

drop databaseif exists】 库名;

表的管理

一、创建表 ★

create tableif not exists】 表名(
	字段名 字段类型 【约束】,
	字段名 字段类型 【约束】,
	。。。
	字段名 字段类型 【约束】 

)

二、修改表

  1. 添加列
alter table 表名 add column 列名 类型 【first|after 字段名】;
  1. 修改列的类型或约束
alter table 表名 modify column 列名 新类型 【新约束】;
  1. 修改列名
alter table 表名 change column 旧列名 新列名 类型;
  1. 删除列
alter table 表名 drop column 列名;
  1. 修改表名
alter table 表名 renameto】 新表名;

三、删除表

drop tableif exists】 表名;

四、复制表

  1. 复制表的结构
create table 表名 like 旧表;
  1. 复制表的结构+数据
create table 表名 
select 查询列表 from 旧表【where 筛选】;

数据类型

一、数值型

  1. 整型
tinyint smallint mediumint int/integer bigint
1 2 3 4 8

特点:
①都可以设置无符号和有符号,默认有符号,通过unsigned设置无符号
②如果超出了范围,会报out or range异常,插入临界值
③长度可以不指定,默认会有一个长度
长度代表显示的最大宽度,如果不够则左边用0填充,但需要搭配zerofill,并且默认变为无符号整型

  1. 浮点型
    定点数:decimal(M,D)
    浮点数:
    float(M,D) 4
    double(M,D) 8

特点:
①M代表整数部位+小数部位的个数,D代表小数部位
②如果超出范围,则报out or range异常,并且插入临界值
③M和D都可以省略,但对于定点数,M默认为10,D默认为0
④如果精度要求较高,则优先考虑使用定点数

二、字符型

charvarcharbinaryvarbinaryenumsettextblob

char:固定长度的字符,写法为char(M),最大长度不能超过M,其中M可以省略,默认为1
varchar:可变长度的字符,写法为varchar(M),最大长度不能超过M,其中M不可以省略

三、日期型
year
date日期
time时间
datetime 日期+时间 8
timestamp 日期+时间 4 比较容易受时区、语法模式、版本的影响,更能反映当前时区的真实时间

发布了41 篇原创文章 · 获赞 1 · 访问量 568

猜你喜欢

转载自blog.csdn.net/qq_41620020/article/details/104884828