Data Definition Language(DDL)基本操作

我在此使用的是MySQL8.0版本和Navicat Premium 12。

什么是DDL

DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等;

DDL 操作

首先我们先登录,可以通过命令mysql -u root -p,再输入密码登录,登录成功页面如下:
在这里插入图片描述
也可以打开Navicat,点击连接,然后输入密码,连接名自取
在这里插入图片描述
之后打开数据库,打开后页面为:
在这里插入图片描述
它有四个基础数据库,其中我还建立了一个info数据库。

接下来我们来学习一下具体操作吧。

基本操作

先介绍两个最基本的操作:

1、查看所有数据库:show databases; 
在这里插入图片描述
在这里插入图片描述

2、切换数据库:use info;,切换到info数据库;
在这里插入图片描述
在这里插入图片描述
后面我所演示都用Navicat,当然在命令窗口也能得到同样的结果。

操作数据库

1、创建数据库:CREATE DATABASE IF NOT EXISTS 数据库名;或者CREATE DATABASE 数据库名;

CREATE DATABASE xuan;,创建一个名为xuan的数据库。如果这个数据已经存在,那么会报错。
在这里插入图片描述
我们创建后将数据库刷新一下就可以看见我们常见的数据库"xuan"。

如果我们创建一个已经存在的数据库会怎么样呢?
在这里插入图片描述
由此可知如果数据库存在,使用CREATE DATABASE xuan;创建会报错。

CREATE DATABASE IF NOT EXISTS xuan;,在名为xuan的数据库不存在时创建该库,这样可以避免报错。
在这里插入图片描述
我们再次使用CREATE DATABASE IF NOT EXISTS xuan;创建发现它不会报错。所以在创建数据库我推荐使用这种方式能够避免报错。

2、删除数据库:DROP DATABASE IF EXISTS 数据库名;或者DROP DATABASE 数据库名;

DROP DATABASE mydb1,删除名为mydb1的数据库。如果这个数据库不存在,那么会报错。
在这里插入图片描述

DROP DATABASE IF EXISTS mydb1,就算mydb1不存在,也不会的报错。

在这里插入图片描述

3、修改数据库编码:ALTER DATABASE 数据库名 CHARACTER SET utf8;

在这里插入图片描述
点击xuan数据库,右键编辑数据库可以查看。
在这里插入图片描述

常见数据类型

int:整型;

double:浮点型,例如double(5,2)表示最多5位,其中必须有2位小数,即最大值为999.99;

decimal:泛型型,在表单线方面使用该类型,因为不会出现精度缺失问题;

char:固定长度字符串类型;(当输入的字符不够长度时会补空格);

varchar:固定长度字符串类型(当输入的字符不够长度时不会补空格);

text:字符串类型;

blob:字节类型;

date:日期类型,格式为:yyyy-MM-dd;

time:时间类型,格式为:hh:mm:ss

timestamp:时间戳类型;

操作表

1、创建表

CREATE TABLE 表名(
  列名 列类型,
  列名 列类型,
  ......
);

先切换到xuan数据库,然后创建一张stu表如下:
在这里插入图片描述
2、查看表结构: DESC 表名;

查看stu的表结构:DESC stu;
在这里插入图片描述
3、删除表:DROP TABLE 表名;

删除stu表:DROP TABLE stu;,删除后刷新表就会在数据库下消失。
在这里插入图片描述
4、修改表

4.1 添加列: ALTER TABLE 表名 ADD (classname varchar(100));

现在创建一张stu表,给stu表添加classname列:

在这里插入图片描述
我们查看表结构后发现多了一列(classname列)。
在这里插入图片描述
4.2 修改列的数据类型:ALTER TABLE 表名 MODIFY 列名 CHAR(2);

修改stu表的gender列类型为CHAR(2)。
在这里插入图片描述

4.3 修改列名:ALTER TABLE 表名 change 需要修改的列名 目标列名 数据类型;

修改stu表的gender列名为sex。
在这里插入图片描述
4.4 删除列:ALTER TABLE 表名 DROP 列名;

删除stu表的classname列。

在这里插入图片描述
4.5 修改表名称:ALTER TABLE 原表名 RENAME TO 修改后表名;

修改stu表名称为student。刷新会发现表名改为student。

在这里插入图片描述

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力做一只合格的前端攻城狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值