MySQL入门_实战3_创建和删除数据库
MySQL入门_实战系列文章目录
- MySQL入门_实战1 MYSQL安装和卸载
- MySQL入门_实战2 MYSQL的登录和断开以及SQL查询常见问题
文章目录
- MySQL入门_实战系列文章目录
- 前言
- 1.创建和使用数据库
- 1.1 查看数据库
- 1.2 创建库
- 1.3 选择数据库
- 1.4 字符集编码
- 1.5 删除数据库
前言
创建数据库比较简单,本节将介绍如何执行以下操作。
1.创建和使用数据库
1.1 查看数据库
登录到数据库
mysql -uroot -p
使用SHOW语句可以找出服务器上当前存在哪些数据库:
mysql> SHOW DATABASES;
新安装的数据库中一般可以看到 information_schema、mysql、performance_schema 和 sys这四个自带的数据库。
1.2 创建库
语法格式:
CREATE DATABASE database_name;
在MySQL命令行中创建名称为goods的数据库,用来管理商品。
CREATE DATABASE goods;
然后,查看通过 命令**SHOW DATABASES;**查看MySQL中存在的数据库
mysql> SHOW DATABASES;
可以看到,数据库列表中增加了名称为goods
的数据库。
如果数据库中目前已经存在了名为goods的数据库,再次使用CREATE DATABASE goods;语句创建名称为goods的数据库时就会报错。
报错信息:
ERROR 1007 (HY000): Can’t create database ‘goods’; database exists
错误信息为:无法创建数据库goods
,数据库已存在。
现在我们有一个需求是:
如果MySQL中不存在goods数据库,则建库;如果MySQL中已经存在goods数据库,则忽略该创建语句不建库,且SQL不报错。
这种情况下,可以使用CREATE DATABASE IF NOT EXISTS的SQL格式创建数据库避免报错的情况。
创建数据库的语法格式如下:
CREATE DATABASE IF NOT EXISTS database_name;
例:
mysql> CREATE DATABASE IF NOT EXISTS goods;
1.3 选择数据库
创建数据库后并不会直接使用该库,你必须明确指定库。要使unitedkingdom成为当前数据库,使用以下语句:
mysql> USE goods
数据库只需要创建一次,但每次开始mysql会话时都必须指定数据库。您可以通过USE语句来实现这一点。或者,您可以在调用mysql时在命令行上选择数据库。只需在命令行连接串之后指定它的名称即可,例如:
$> mysql -u root -p goods
重点提示:
刚才显示的命令中的goods
不是您的密码。如果希望在命令行上的-p选项之后提供密码,那么必须不使用空格(例如,作为-ppassword
,而不是作为-p password
)。但是,不建议将密码放在命令行上,因为这样做可能会被登录到您机器上的其他用户窥探到。
可以通过命令 SELECT DATABASE();
随时查看当前选择的数据库
mysql> SELECT DATABASE();
1.4 字符集编码
查看数据库默认字符集编码
SHOW VARIABLES LIKE '%character_set_database%';
前面我们创建名称为goods的数据库时没有指定字符集编码,那么goods库使用的是什么字符集编码呢?
MYSQL会为创建的每个库指定一个字符编码。如果在创建数据库的SQL中时没有为显式的指定字符编码,那么MySQL会为数据库使用默认的字符编码,这个默认的字符编码就是上面查询到的信息,也是我们写在数据库配置文件my.cnf中的信息。
[mysqld]
#服务端字符集
character-set-server=utf8mb4
[mysql]
#客户端默认字符集
default-character-set=utf8mb4
[client]
#设置mysql客户端连接服务端时默认使用的端口
default-character-set=utf8mb4
查看数据库中记录的建库信息
SHOW CREATE DATABASE goods;
在命令行中,也可使用下面这个格式,对输出进行格式化
SHOW CREATE DATABASE database_name \G
可以发现,此时goods数据库的字符编码为utf8mb4,排序规则为utf8mb4_0900_ai_ci。
说明:
\G,表示将查询结果进行按列打印,横向表格纵向输出,可以使每个字段打印到单独的行
1.5 删除数据库
在MySQL中删除数据库的语法格式如下:
DROP DATABASE [IF EXISTS] database_name;
[IF EXISTS] 是可选参数,用来判断待删除数据库是否存在。
下面以这个例子说明:
mysql> DROP DATABASE goods;
查看MySQL中存在的数据库。
mysql> SHOW DATABASES;
可以看到,goods数据库已经被删除。
如果MySQL中不存在goods数据库,执行DROP DATABASE goods;
命令则会报错:ERROR 1008 (HY000): Can't drop database 'goods'; database doesn't exist
提示信息为:无法删除goods数据库,数据库不存在
通过这下面这种方式可以避免报错:
mysql> DROP DATABASE IF EXISTS goods;
如果MySQL中存在goods数据库,则删库;如果MySQL中不存在goods数据库,则忽略删库语句且SQL不报错。
如果该文章有帮助到您,请 点赞 支持,谢谢!
有任何疑问,欢迎在评论中留言。
MySQL入门_实战3_创建和删除数据库相关推荐
- MySQL入门_实战6_MySQL数据的更新
MySQL入门_实战系列文章目录 文章目录 MySQL入门_实战系列文章目录 前言 2 数据更新 2.1 语法格式 2.2 更新数据表中的所有记录 2.3 更新表中特定的数据行 2.4 更新某个范围内 ...
- 三天学会Mysql之第(三)天:创建修改删除
今天是本系列文章最后一篇,内容较简单,在本系列完成之后,会更新一些关于sql的练习题,大概几百道不定时更新,感谢观看 创建表 创建表可以使用sql的create table语句来进行操作,也可以使用可 ...
- 【简洁明了MySQL】MySQL基础操作之连接,创建和删除数据库
MYSQL基础操作之连接,创建和删除数据库 一.MySQL连接 1.方法一:客户端直接连接法(不推荐) 2. 方法二:使用命令行登录 3.两种不同的登陆状态 4.创建用户 二.创建数据库 1.crea ...
- azure云数据库_在Azure Cosmos DB中使用PowerShell创建和删除数据库
azure云数据库 Our testing or development may call for dynamic creation on the database level for Azure C ...
- Java从入门到实战总结-4.2、数据库高级
Java从入门到实战总结-4.2.数据库高级 文章目录 Java从入门到实战总结-4.2.数据库高级 第一章 数据完整性 1.1 数据库的完整性 1.2 实体完整性 1.2.1 主键约束(primar ...
- Oracle数据库 二 创建和删除数据库
Database configuration Assistant 创建或删除数据库 在开始菜单中可已找到安装数据库后的database configuration assistant 软件,该软件用于 ...
- MySQL笔记5:如何创建和删除索引?
MySQL数据库中如何创建和删除索引? 一.创建索引 索引的创建可以在CREATE TABLE语句中进行,也可以单独用CREATE INDEX或ALTER TABLE来给表增加索引. 1.使用CREA ...
- mysql的删除命令+linux命令大全,Linux环境下MySQL基础命令----查看、创建、删除库和表...
案例二,查看数据库 MySQL是一套数据库管理系统,支持运行多个库,每个库相当于一个容器,存放着许多表.数据就存在这些表中,所以查看.创建.删除库和表,在工作中必不可少. 一,查看 1,查看当前服务器 ...
- 猿创征文|MySQL入门到实战-基础篇
项目一 分析并设计学生管理数据库 主要目标是在了解用户软件操作需求的基础上,提炼.总结.归纳出对数据库的需求.主要内容,数据库的存储结构.表中数据及其依赖关系.设计方案的优化与规范.视图等其他数据库对 ...
最新文章
- 六角透明颜色[复制]
- 以安全之名:俄罗斯强制所有消息应用留后门
- Qt paintevent事件
- sqlserver中的数据类型[转]
- 一篇文章,带你全面的了解二叉树-记得点赞
- css3玩转各种效果【资源】
- python有趣的代码-分享几款由quot;Python”语言编写的quot;有趣、恶搞、好玩”的程序代码...
- matlab gui图标,matlab GUI
- 数字图像处理与Python实现-图像变换-Radon变换
- Msm8960(APQ8064)平台的MSM-AOSP-kitkat编译适配(2):开发环境及相关的使用技巧
- 计算机组装实验硬盘分区方法,硬盘怎么分区和格式化 史上最详细的硬盘分区方法大全 (全文)...
- 运动图像国际压缩标准-整理
- matlab特定颜色提取
- 计算机实验室行政助理职责,【实验室助理工作内容|工作职责|实验室助理做什么】-看准网...
- Modbus 超时时间设置
- mac虚拟机服务器设置u盘启动不了,手把手教你解决win7系统苹果电脑运行虚拟机后无法识别显示U盘的图文方案...
- Measurement Studio​ 2019 R3
- Firebase token认证 “kid“ invalid, unable to lookup correct key
- html 获取语音时长,javascript – HTML5音频 – 获取声音对象的时间(howler.js)
- iOS NEON 介绍