MySQL实战必备文章。DDL常用命令汇总及登录数据库相关命令!

  • DDL(Data Definition Languages)语句:即数据库定义语句

对于数据库而言实际上每一张表都表示是一个数据库的对象,而数据库对象指的就是DDL定义的所有操作,例如:表,视图,索引,序列,约束等等,都属于对象的操作,所以表的建立就是对象的建立,而对象的操作主要分为以下三类语法

  1. 创建对象:CREATE 对象名称;

  2. 删除对象:DROP 对象名称;

  3. 修改对象:ALTER 对象名称;


DDL 命令

=========================================================================

  • 数据库的安装相关操作再此就不在为大家演示了,直接进入正题!

数据库相关操作


在这里插入图片描述

一. 创建数据库

  • 语法:create database 数据库名字;

mysql> create database sqltest;

  • 结果:

在这里插入图片描述

二. 查看已经存在的数据库

  • 语法:show databases;

mysql> show databases;

  • 结果:

在这里插入图片描述

可以发现,在上面的列表中除了刚刚创建的 mzc-test,sqltest,外,还有另外 4 个数据库,它们都是安装MySQL 时系统自动创建的,其各自功能如下。

  1. information_schema:主要存储了系统中的一些数据库对象信息。比如用户表信息、列信息、权限信息、字符集信息、分区信息等。

  2. cluster:存储了系统的集群信息。

  3. mysql:存储了系统的用户权限信息。

  4. test:系统自动创建的测试数据库,任何用户都可以使用。

三. 选择数据库

  • 语法:use 数据库名;

mysql> use mzc-test;

  • 返回Database changed代表我们已经选择 sqltest 数据库,后续所有操作将在 sqltest 数据库上执行。

在这里插入图片描述

  • 有些人可能会问到,连接以后怎么退出。其实,不用退出来,use 数据库后,使用show databases就能查询所有数据库,如果想跳到其他数据库,用use 其他数据库名字。

四. 查看数据库中的表

  • 语法:show tables;

mysql> show tables;

  • 结果:

在这里插入图片描述

五. 删除数据库

  • 语法:drop database 数据库名称;

mysql> drop database mzc-test;

  • 结果:

在这里插入图片描述

  • 注意:删除时,最好用 `` 符号把表明括起来

数据库表相关操作


在这里插入图片描述

一. 创建表

语法:create table 表名 {列名,数据类型,约束条件};

CREATE TABLE Student(

s_id VARCHAR(20),

s_name VARCHAR(20) NOT NULL DEFAULT ‘’,

s_birth VARCHAR(20) NOT NULL DEFAULT ‘’,

s_sex VARCHAR(10) NOT NULL DEFAULT ‘’,

PRIMARY KEY(s_id)

);

  • 结果

在这里插入图片描述

注意:表名还请遵守数据库的命名规则,这条数据后面要进行删除,所以首字母为大写。

二. 查看表定义

  • 语法:desc 表名

mysql> desc Student;

  • 结果:

在这里插入图片描述

  • 虽然 desc 命令可以查看表定义,但是其输出的信息还是不够全面,为了查看更全面的表定义信息,有时就需要通过查看创建表的 SQL 语句来得到,可以使用如下命令实现

  • 语法:show create table 表名 \G;

mysql> show create table Student \G;

  • 结果:

在这里插入图片描述

  • 从上面表的创建 SQL 语句中,除了可以看到表定义以外,还可以看到表的engine(存储引擎)和charset(字符集)等信息。\G选项的含义是使得记录能够按照字段竖着排列,对于内容比较长的记录更易于显示。

三. 删除表

  • 语法:drop table 表名

mysql> drop table Student;

  • 结果:

在这里插入图片描述

四. 修改表 (重要)

  • 对于已经创建好的表,尤其是已经有大量数据的表,如果需要对表做一些结构上的改变,我们可以先将表删除(drop),然后再按照新的表定义重建表。这样做没有问题,但是必然要做一些额外的工作,比如数据的重新加载。而且,如果有服务在访问表,也会对服务产生影响。因此,在大多数情况下,表结构的更改一般都使用 alter table语句,以下是一些常用的命令。
1. 修改表类型
  • 语法:ALTER TABLE 表名 MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]

  • 例如,修改表 student 的 s_name 字段定义,将 varchar(20)改为 varchar(30)

mysql> alter table Student modify s_name varchar(30);

  • 结果:

在这里插入图片描述

2. 增加表字段
  • 语法:ALTER TABLE 表名 ADD [COLUMN] [FIRST | AFTER col_name];

  • 例如,表 student 上新增加字段 s_test,类型为 int(3)

mysql> alter table student add column s_test int(3);

  • 结果:

在这里插入图片描述

3. 删除表字段
  • 语法:ALTER TABLE 表名 DROP [COLUMN] col_name

  • 例如,将字段 s_test 删除掉

mysql> alter table Student drop column s_test;

  • 结果:

在这里插入图片描述

4. 字段改名
  • 语法:ALTER TABLE 表名 CHANGE [COLUMN] old_col_name column_definition [FIRST|AFTER col_name]

  • 例如,将 s_sex 改名为 s_sex1,同时修改字段类型为 int(4)

mysql> alter table Student change s_sex s_sex1 int(4);

  • 结果:

在这里插入图片描述

注意:change 和 modify 都可以修改表的定义,不同的是 change 后面需要写两次列名,不方便。但是 change 的优点是可以修改列名称,modify 则不能。

5. 修改字段排列顺序
  • 前面介绍的的字段增加和修改语法(ADD/CNAHGE/MODIFY)中,都有一个可选项first|after column_name,这个选项可以用来修改字段在表中的位置,默认 ADD 增加的新字段是加在表的最后位置,而 CHANGE/MODIFY 默认都不会改变字段的位置。

  • 例如,将新增的字段 s_test 加在 s_id 之后

  • 语法:alter table 表名 add 列名 数据类型 after 列名;

mysql> alter table Student add s_test date after s_id;

  • 结果:

在这里插入图片描述

  • 修改已有字段 s_name,将它放在最前面

mysql> alter table Student modify s_name varchar(30) default ‘’ first;

  • 结果:

在这里插入图片描述

注意:CHANGE/FIRST|AFTER COLUMN 这些关键字都属于 MySQL 在标准 SQL 上的扩展,在其他数据库上不一定适用。

6.表名修改
  • 语法:ALTER TABLE 表名 RENAME [TO] new_tablename

  • 例如,将表 Student 改名为 student

mysql> alter table Student rename student;

  • 结果:

在这里插入图片描述

其他不常用命令

最后

每年转战互联网行业的人很多,说白了也是冲着高薪去的,不管你是即将步入这个行业还是想转行,学习是必不可少的。作为一个Java开发,学习成了日常生活的一部分,不学习你就会被这个行业淘汰,这也是这个行业残酷的现实。

如果你对Java感兴趣,想要转行改变自己,那就要趁着机遇行动起来。或许,这份限量版的Java零基础宝典能够对你有所帮助。

g.csdnimg.cn/2773e6372c3f4d969a4192b4a2c2a563.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTY5MjcwNQ==,size_16,color_FFFFFF,t_70)

其他不常用命令

最后

每年转战互联网行业的人很多,说白了也是冲着高薪去的,不管你是即将步入这个行业还是想转行,学习是必不可少的。作为一个Java开发,学习成了日常生活的一部分,不学习你就会被这个行业淘汰,这也是这个行业残酷的现实。

如果你对Java感兴趣,想要转行改变自己,那就要趁着机遇行动起来。或许,这份限量版的Java零基础宝典能够对你有所帮助。

[外链图片转存中…(img-a1iQIfZu-1721149457790)]

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值