文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Mysql学习之创建和操作数据库及表DDL大全小白篇

2024-04-02 19:55

关注

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 exists

drop 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–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 列名

以上就是Mysql学习之创建和操纵数据库及表DDL大全小白篇的详细内容,更多关于Mysql数据库资料请关注编程网其它相关文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯