mysql创建和操纵数据库和表(ddl)最全总结(小白都能能懂哦) -ag凯发k8国际
1.1创建数据库
create database 数据库名称
当然如果我们不知道数据库是否存在,如果存在就不创建,不存在就创建可以用以下语句
create database if not exists 数据库名称
我们还可以在创建数据库的时候指定字符集
create dabase if not exists 数据库名 character set 字符集名
1.2查询数据库
查询所有已经存在的数据库
show databases
查询某个数据库的创建语句和所使用的字符集
show create database 数据库名称
1.3修改数据库
修改数据库字符集
alter database 数据库名称 character set 字符集名称
1.4删除数据库
drop database 数据库名
同样的,也可以加上 if not exists
drop database if exists 数据库名称
1.5使用数据库
使用数据库
use 数据库名称
查询当前正在使用数据库的名称
select database()
2.1mysql数据类型
数据类型介绍tinyint | 存储1字节8位的整数 |
int/integer | 存储4字节32位的整数 |
float | 存储单精度浮点数 |
double | 存储双精度浮点数 |
char(n) | 存储字符 |
varchar(n) | 存储字符 |
date | 存储日期,只包含年月日格式:yyyy-mm–dd |
datetime | 存储日期,包含年月日时分秒,格式:yyyy-mm-dd hh:mm:ss |
timestamp | 存储日期,包含年月日时分秒,格式:yyyy-mm-dd hh:mm:ss |
问题1:varchar和char的特点和区别
char的特点:
1.char表示定长字符串,长度是固定的(比如char(5)即使不够5个字符也是按5个字符存储)
个字符也会按照5个字符存储);
2.如果插入数据的长度小于char的固定长度时,则用空格填充;
3.因为长度固定,所以存取速度要比varchar快很多,甚至能快50%,但正因为其长度固定,所以会占据多余的空间,是空间换时间的做法;
4.对于char来说,最多能存放的字符个数为255,和编码无关
varchar的特点:
1.varchar表示可变长字符串,长度是可变的(比如varchar(5)不够5个字符,比如3个那么就按照三个字符存储);
2.插入的数据是多长,就按照多长来存储;
3.varchar在存取方面与char相反,它存取慢,因为长度不固定,但正因如此,不占据多余的空间,是时间换空间的做法;
4.对于varchar来说,最多能存放的字符个数为65532
两者的区别:
结合性能角度(char更快)和节省磁盘空间角度(varchar更小)
还有一个点两者都存储字符
张三:代表两个字符
zhangsan:代表八个字符
问题2:int(20)中20的涵义
是指显示字符的长度。20表示最大显示宽度为20,但仍占4字节存储,存储范围不变;
不影响内部存储,只是影响带 zerofill 定义的 int 时,前面补多少个 0,易于报表展示
问题3:float和double的区别是什么?
1.float类型数据可以存储至多8位十进制数,并在内存中占4字节。
2.double类型数据可以存储至多18位十进制数,并在内存中占8字节。
问题4:datetime和timestamp的区别?
对于类型为timestamp的字段来说,不给这个字段赋值或者给这个字段赋空值那么都会默认使用当前系统时间
2.2创建表
create table 表名(
列 数据类型,
列 数据类型,
.........
列 数据类型
)
有时候我们想 复制一个表的结构:
create table 复制的新表名 like 被复制的表
有时候我们想 复制表的所有内容:
create table 复制的新表名 select * from 要复制的表名
注意没有like
有时候我们 只复制部分内容:
create table 复制的新表名 select语句
有时候我们 只复制部分表的字段结构
create table 复制的新表名 select 需要复制的字段 from 要复制的表 where 一个恒不成立的条件(如0=1)
2.3查询表
查询数据库中所有的表的名称
show tables
查询表结构
desc 表名
2.4删除表
drop table if exists 表名
2.5修改表
修改表名
alter table 表名 rename to 新表名
修改表的字符集
alter table 表名 character set 字符集名称
添加一列
alter table 表名 add (column) 列 数据类型
修改列名称
alter table 表名 change (column) 列名 新列名 数据类型
修改列类型
alter table 表名 modify (column) 列名 新的数据类型
删除列
alter table 表名 drop 列名
总结
以上是ag凯发k8国际为你收集整理的mysql创建和操纵数据库和表(ddl)最全总结(小白都能能懂哦)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: mysql入门篇(含数据库的备份)
- 下一篇: mysql五大约束详解(我有多详细只有我