当前位置:   article > 正文

MySql数据库从0到1学习-第一天DDL学习

MySql数据库从0到1学习-第一天DDL学习

DDL

数据库(查询/创建/修改/删除)

查询数据库

以下语句的database 可以替换为schema,效果一样

//展示所有的数据库
show database; 
  • 1
  • 2
//显示当前选择的数据库
select database(); 
  • 1
  • 2
创建数据库
//创建一个数据库叫db_name
create database db_name;
  • 1
  • 2
//如果不存在就创建db_name
create database if not exists db_name; 
  • 1
  • 2
删除数据库
//删除数据库叫db_name
drop database db_name;
  • 1
  • 2
//删除数据库叫db_name,如果有才删除
drop database if exists db_name;
  • 1
  • 2
使用数据库
//使用数据库名为db_name
use db_name;
  • 1
  • 2

表(创建/删除/修改)

创建表
//字段约束为可选,可以不添加
create table 表名(
    字段1 字段类型 字段约束 comment 字段注释,
    字段2 字段类型 字段约束 comment 字段注释,
    字段3 字段类型 字段约束 comment 字段注释,
    ....
)[comment 表注释];
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
查询表
//查询数据库下所有的表
show tables;
  • 1
  • 2
//查询表的表结构
desc 表名;
  • 1
  • 2
//查询建表语句
show create table 表名;
  • 1
  • 2
修改表
//添加字段
alter table 表名  add 字段名 类型 约束 comment 注释;
  • 1
  • 2
//修改字段类型
alter table 表名 modify 字段名 新数据类型
  • 1
  • 2
//修改字段名和字段类型
alter table 表名 change 旧字段名  新字段名 类型 约束 comment 注释;
  • 1
  • 2
//删除字段
alter table 表名 drop column 字段名;
  • 1
  • 2
//修改表名
rename table 表名 to 新表名;
  • 1
  • 2
表字段约束
约束描述关键字
非空约束限制该字段不可为nullnot null
唯一约束保证该字段的所欲数据都是唯一,不重复的unique
主键约束主键是一行数据的唯一标识,要求非空且唯一primary key
默认约束保存数据时,如果没有指定值,则使用默认值default
外键约束让两张表的数据建立联系,保证数据的一致性和完整行foreign key

表字段的数据类型

主要分为三类,数值类型/字符串类型/日期时间类型

数值类型
类型大小(byte)有符号(SIGNED)范围无符号(UNSIGNED范围描述备注
tinyint1(-128,127)(0,255)小整数值
smallint2(-32768,32767)(0,65535)大整数值
mediumint3(-8388608,8388607)(0,16777215)大整数值
int4(-2147483648,2147483647)(0,4294967295)大整数值
bitint8(-2^63,2~63-1)(0,2^64-1)极大整数值
float4(-3.402823466 E+38,3.402823466351 E+38)0 和(1.175494351 E-38,3.402823466 E+38)单精度浮点数值float(5.2):5表示整个数字长度,2表示小数位个数
double8(-1.7976931348623157 E+308,1.7976931348623157 E+308)0和(2.2250738585072014 E-308,1.7976931348623157 E+308)双精度浮点数值double(5.2):5表示整个数字长度,2表示小数位个数
decimal小数值(精度更高)decimal(5.2):5表示整个数字长度,2表示小数位个数
日期类型
类型大小范围格式描述
date31000-01-01 至 9999-12-31YYYY-MM-DD日期值
time3-838:59:59 至 838:59:59HH:MM:SS时间值或持续时间
year11911-2155YYYY年份值
datetime81000-01-01 00:00:00 至 9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS混合日期和时间值
timestamp41970-01-01 00:00:01 至2038-01-19 03:14:07YYYY-MM-DD HH:MM:SS混合日期和时间值,时间戳

字符串类型

类型大小描述
char0-255bytes定长字符串–>例如(char(10),无论是三个还是四个字符都是占用10个字符空间)性能高,但是浪费空间
varchar0-65535bytes变长字符串–>例如(varchar(10),最多10个字符,不足10个按实际长度存储)性能低,节省空间
tinyblob0-255bytes不超过255个字符的二进制数据
tinytext0-255bytes短文本字符串
blob0-65535bytes二进制的长文本数据
text0-65535bytes长文本数据
mediumblob0-16777215bytes二进制形式的中等长度文本数据
mediumtext0-16777215bytes中等长度文本数据
longblob0-4294967295bytes二进制形式的极大文本数据
longtext0-4294967295bytes极大文本数据
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/406759
推荐阅读
相关标签
  

闽ICP备14008679号