特别注意:创建数据表必须有一个前提,首先要明确选择某一个数据库。
1、数据表的基本操作
数据表的创建
创建 => create
数据表 => table
创建 + 数据表 = create table 数据表名称
基本语法:
mysql> create table 数据表名称(
字段1 字段类型 [字段约束],
字段2 字段类型 [字段约束],
...
);
案例:创建一个admin管理员表,拥有3个字段(编号、用户名称、用户密码)
mysql> create database db_itheima;
mysql> use db_itheima;
use在MySQL中的含义代表选择,use 数据库名称相当于选择指定的数据库。而且use比较特殊,其选择结束后,其尾部可以不加分号;但是强烈建议所有的SQL语句都要加分号,养成一个好习惯。
mysql> create table tb_admin(
id tinyint,
username varchar(20),
password char(32)
) engine=innodb default charset=utf8;
tinyint :微整型,范围-128 ~ 127,无符号型,则表示0 ~ 255
表示字符串类型可以使用char与varchar,char代表固定长度的字段,varchar代表变化长度的字段。
案例:创建一个article文章表,拥有4个字段(编号、标题、作者、内容)
mysql> use db_itheima;
mysql> create table tb_article(
id int,
title varchar(50),
author varchar(20),
content text
) engine=innodb default charset=utf8;
text :文本类型,一般情况下,用varchar存储不了的字符串信息,都建议使用text文本进行处理。
varchar存储的最大长度,理论值65535个字节(字符)。但是实际上,有几个字符是用于存放内容的长度的,所以真正可以使用的不足65535个字符,另外varchar类型存储的字符长度还和编码格式有关。1个GBK格式的占用2个字节长度,1个UTF8格式的字符占用3个字节长度。GBK = 65532~65533/2,UTF8 = 65532~65533/3
查询已创建数据表
显示 => show
数据表 => table
显示所有数据表(当前数据库)
mysql> use 数据库名称;
mysql> show tables;
显示数据表的创建过程(编码格式、字段等信息)
mysql> desc 数据表名称;
修改数据表信息
① 数据表字段添加
修改 => alter
数据表 => table
基本语法:
mysql> alter table 数据表名称 add 新字段名称 字段类型 first|after 其他字段名称;
选项说明:
first:把新添加字段放在第一位
after 字段名称:把新添加字段放在指定字段的后面
案例:在tb_article文章表中添加一个addtime字段,类型为date(年-月-日)
mysql> alter table tb_article add addtime date after content;
mysql> desc tb_article;
② 修改字段名称或字段类型
修改字段名称与字段类型(也可以只修改名称)
mysql> alter table tb_admin change username user varchar(40);
mysql> desc tb_admin;
仅修改字段的类型
mysql> alter table tb_admin modify user varchar(20);
mysql> desc tb_admin;
③ 删除某个字段
mysql> alter table tb_article drop 字段名称;
mysql> desc tb_article;
④ 修改数据表名称
rename table 旧名称 to 新名称;
删除数据表
删除 => drop
数据表 => table
mysql> drop table 数据表名称;
2、字段类型详解
① 整数类型
分类 | 类型名称 | 说明 |
tinyint | 很小的整数 | -128 ~ 127 |
smallint | 小的整数 | -32768 ~ 32767 |
mediumint | 中等大小的整数 | -8388608 ~ 8388607 |
int(integer) | 普通大小的整数 | -2147483648 ~ 2147483647 |
整数类型的选择,看数字范围!
unsigned无符号型,只有正数,没有负数情况,tinyint unsigned,表示范围0-255
② 浮点类型(带小数点数据类型)
浮点类型(精度失真情况)和定点类型(推荐使用定点类型)
分类 | 类型名称 |
float | 单精度浮点数 |
double | 双精度浮点数 |
decimal(m,d) | 定点数,decimal(10,2) |
decimal(10,2) :代表这个数的总长度为10 = 整数长度 + 小数长度,2代表保留2位小数
③ 日期类型
份额里 | 类型名称 |
year | YYYY 1901~2155 |
time | HH:MM:SS -838:59:59~838:59:59 |
date | YYYY-MM-DD 1000-01-01~9999-12-3 |
datetime | YYYY-MM-DD HH:MM:SS 1000-01-01 00:00:00~ 9999-12-31 23:59:59 |
timestamp | YYYY-MM-DD HH:MM:SS 19700101 00:00:01 UTC~2038-01-19 03:14:07UTC |
日期时间类型的选择主要看格式!
④ 文本类型
类型名称 | 说明 |
char(m) | m为0~255之间的整数定长(固定长度) |
varchar(m) | m为0~65535之间的整数变长(变化长度) |
text | 允许长度0~65535字节 |
mediumtext | 允许长度0~167772150字节 |
longtext | 允许长度0~4294967295字节 |
255个字符以内,固定长度使用char(字符长度),变化长度使用varchar(字符长度)
假设:有一个数据,一共有5个字符,char(11),实际占用11个字符,相同长度数据,char类型查询要比varchar要快一些;变化长度varchar(11),实际占用5个字符长度。
超过255个字符,选择text文本类型!
本站资源均来自互联网,仅供研究学习,禁止违法使用和商用,产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系!
转载请注明出处: 免费源码网-免费的源码资源网站 » DDL数据表操作
发表评论 取消回复