欢迎访问 生活随笔!

ag凯发k8国际

当前位置: ag凯发k8国际 > 运维知识 > 数据库 >内容正文

数据库

mysql创建和操纵数据库和表(ddl)最全总结(小白都能能懂哦) -ag凯发k8国际

发布时间:2024/10/14 数据库 29 豆豆
ag凯发k8国际 收集整理的这篇文章主要介绍了 mysql创建和操纵数据库和表(ddl)最全总结(小白都能能懂哦) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
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)最全总结(小白都能能懂哦)的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得ag凯发k8国际网站内容还不错,欢迎将ag凯发k8国际推荐给好友。

网站地图