本篇文章是MySQL小白入门篇,主要讲解创建和操纵数据库及表懂得了,内容非常全面,有需要的朋友可以借鉴参考下,希望可以有所帮助
目录
- 1.操作数据库
- 1.1创建数据库
- 1.2查询数据库
- 1.3修改数据库
- 1.4删除数据库
- 1.5使用数据库
- 2.操作表
- 2.1MySQL数据类型
- 2.2创建表
- 2.3查询表
- 2.4删除表
- 2.5修改表
1.操作数据库
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 existsdrop database + if exists + 数据库名称 1.5使用数据库
使用数据库use + 数据库名称 查询当前正在使用数据库的名称select database() 2.操作表
2.1MySQL数据类型
数据类型介绍tinyint存储1字节8位的整数int/integer存储4字节32位的整数float存储单精度浮点数double存储双精度浮点数char(n)存储字符varchar(n)存储字符date存储日期,只包含年月日格式:yyyy-MM–dddatetime存储日期,包含年月日时分秒,格式:yyyy-MM-dd HH:mm:sstimestamp存储日期,包含年月日时分秒,格式: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 列名 以上就是Mysql学习之创建和操纵数据库及表DDL大全小白篇的详细内容,更多关于Mysql数据库资料请关注CodeAE代码之家其它相关文章!
原文链接:https://blog.csdn.net/qq_45737068/article/details/106134650
|