赞
踩
哈喽大家好~
这里是MYSQL数据库原理学习笔记专栏第二期
本期内容——数据库/数据表的创建、查看、选择与修改
上期内容——数据库基础知识
欢迎大佬指正,一起学习,一起加油~
在MySQL数据库的学习中,数据库、数据表和数据的操作,不仅仅是必须掌握的内容,也是学习后续的基础噢~
本期主要内容为:
数据库的创建、查看、选择与删除
数据表的创建、查看、选择与删除
MySQL服务器中的数据库可以有多个,分别存储不同的数据。要想将数据存储到数据库中,首先需要创建一个数据库。创建数据库就是在数据库系统中划分一块存储数据的空间。
TIPS:创建数据库就是在存储数据的文件夹data下生成一个与数据库同名的目录,用于保存此数据库相关的内容。
基本语法如下:
create database 数据库名称 [库选项];
如图:我们先创建一个mydb的数据库,然后用show databases;
查看数据库,就可以看到创建的数据库了。
如果创建的数据库已经存在,则程序会报错。为了防止这种情况的发生,我们在创建数据库时可以在数据库名称前添加 if not exists
,表示指定的数据库不存在时执行创建操作,否则忽略此操作。
如图,再次创建一个mydb的数据库,会发现没有发生错误,但是服务器给出了警告。此时,我们用show warnings;
查看警告,会发现它提示数据库已经存在,不能再次创建。
数据库创建完成后,我们可以查看数据库,查看数据库有以下两种方法:
查看MySQL服务器中已经存在的数据库时,语法如下:
show databases;
如下,在输出结果中,有五个数据库,其中mydb是手动创建的数据库,其他数据库都是MySQL安装时自动创建的。
information_schema
数据库是服务器的数据字典,用于保存所有数据表和库的结构信息;
performance_schema
数据库是服务器的性能字典,用于保存全局变量等的设置;
mysql
数据库主要负责MySQL服务器自己需要使用的控制和管理信息;
sys
是系统数据库,包括了存储过程、自定义函数等信息。
完成创建后,查看该数据库的信息,语法如下:
show create database 数据库名称;
如下,我们可以看到创建mydb数据库时的语句和数据库的默认字符集。
在MySQL服务器中的数据存储在数据表中,而数据表需要存储到对应的数据库下,并且MySQL服务器中又可以同时存在多个数据库,所以我们在进行操作时,首先需要选择数据库。
如下:
use 数据库名称;
如果要清楚数据库中的所有数据,回收为数据库分配的存储空间,则可以执行删除数据库的操作,语法如下:
drop database 数据库名称;
在删除数据库时,如果要删除的数据库不存在,则服务器会报错。因此,可以使用if exists
,这里的方法和创建数据库相似。
TIPS:在删除数据库时,要记得备份噢~
在MySQL中,所有的数据都存储在数据表中,若要进行添加、查看、修改、删除等操作,首先需要在指定的数据库中准备一张数据表。
语法如下:
create [temporary] table [if not exists] 表名
(字段名 字段类型 [字段属性] …) [表选项]
temporary
:临时表,仅在当前会话中可见,并且在会话关闭时自动删除;
字段名
:数据表列名;
字段类型
:设置字段中保存的数据类型;
字段属性
:字段的某些特殊约束条件;
表选项
:设置表的相关特性。
如下,创建一个goods表:
查看数据表的语法格式如下:
show tables [like匹配模式];
匹配模式符有两种,%
表示匹配一个或者多个字符,字符长度不限,也可以为0,-
只能匹配一个字符。
如下,先创建一个new_goods表,然后匹配new字符:
查看数据表的相关信息:
rename table 旧表名1 to 新表名1 [,旧表名2 to 新表名2] …
rename table
必须使用to
,可以同时修改多个数据表
的名称。
数据表中的表选项字符集、存储引擎以及校对集也可以通过alter table
修改,语法如下:
alter table 表名 表选项 [=] 值;
describe
语句可以查看数据表中所有字段或指定字段的信息,包括字段名、字段类型等
。describe
可以简写成desc
,语法如下:
查看所有字段的信息
{describe | desc} 数据表名;
查看指定字段的信息
{describe | desc} 数据表名 字段名;
如下:
field
:字段名称
type
:字段的数据类型
null
:该字段是否可以为空
key
:该字段是否已经设置了索引
defalut
:该字段是否有默认值
extra
:获取到的与该字段相关的附加信息。
如果想要查看创建数据表的具体SQL语句以及表的字符编码,则可以使用以下语句:
show create table 表名;
查看表结构用以下两种方法:
show [full] columns from 数据表名 [from 数据库名];
show [full] columns from 数据库名.数据表名;
其中full
表示显示详细内容,如果不添加
,则查询结果和desc的结果相同
;如果添加
,则不仅可以查看到desc语句查看的信息
,也可以查看到字段的权限、comment字段的注释信息
。
创建完数据表后,可以利用alter table
语法对字段名称、类型、位置等进行修改、增加或者删除,以下是几种常用的方法。
仅修改数据表中的字段名称,使用change
实现,语法如下:
alter table 数据表名 change [column] 旧字段名 新字段名 字段类型 [字段属性];
旧字段名
:字段修改前的名称
新字段名
:字段修改后的名称
字段类型
:新字段名的数据类型,不能为空
,即使与旧字段名的数据类型相同,也必须重新设置
。
仅修改数据表中的字段类型,通常使用modify
实现,语法如下:
alter table 数据表名 modify [column] 字段名 新类型 [字段属性];
数据表在创建时,字段编写的先后顺序就是其在数据库中存储的顺序,如果需要进行调整,也可以使用modify实现,语法如下:
alter table 数据表名 modify [column] 字段名1 数据类型 [字段属性] [first | after 字段名2];
first
:表示将字段名1调整为数据表的第一个字段;
after 字段名2
:表示将字段名1插入到字段名2的后面。
新增一个字段,并且可以指定其位置:
alter table 数据表名 add [column] 新字段名 字段类型 [first | after 字段名];
同时新增多个字段:
alter table 数据表名 add [column] (新字段名1 字段类型1 ,新字段名2 字段类型2,…);
在不指定位置的情况下,新增的字段默认添加到表的最后,新增多个字段时不能指定字段位置。
将某个字段从数据表中删除,通过drop
完成,语法如下:
alter table 数据表名 drop [column] 字段名;
删除数据表操作指的是删除指定数据库中已经存在的表,删除数据表的同时,存储在数据表中的数据都将被删除
,语法如下:
drop [temporary] table [if exists] 数据表1 [,数据表2]…;
删除数据表时,可以同时删除多个数据表,多个数据表之间用逗号分隔
,if exists
用于在删除一个不存在的数据表时,防止产生错误。
以上就是今天的学习内容啦~
如果有兴趣的话可以订阅专栏,持续更新呢~
咱们下期再见~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。