Mysql已经成为了最流行的关系型数据库之一,目前最新的mysql版本已到了8.0了,另外它算的上是php的好基友,曾经的lamp架构风靡一时。今天我们来看看数据库的一些操作。
首先声明,我演示的mysql的版本是5.7.28这个版本。
新建数据库
首先教大家一个技巧,忘记了建库语法怎么办,MYSQL提供了help来帮助你。比如,你忘记了建库语句,只知道开头命令是create。那么可以在MySQL的客户端输入help craete;
mysql> help create …… topics: CREATE DATABASE CREATE EVENT CREATE FUNCTION CREATE FUNCTION UDF ……
现在,我们知道了建库语句前两个单词了,继续help,看看具体的语法是怎样的。
mysql> help create database …… CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_specification] ... create_specification: [DEFAULT] CHARACTER SET [=] charset_name | [DEFAULT] COLLATE [=] collation_name ……
现在我们就知道具体的语法是怎样的了。
语法:
create database [if not exists] 数据库名 [ [charset 字符集名] [collate 校对集名] ]
-
if not exists表示该数据库不存在时候才建立
-
字符集这个和html字符集是一个意思,通常选择有utf8或utf8mb4
-
校对集这个是和字符间比对和排序相关。
下面来完成一个job库的建立
mysql> CREATE DATABASE IF NOT EXISTS jobs -> CHARSET utf8 -> COLLATE utf8_general_ci; Query OK, 1 row affected (0.01 sec)
查看数据库
当一个库建立好了,就需要去查看下,看看是不是真的建立了。
查看数据库的语法如下:
show databases [like patter]
该命令能够展示所有的数据库,以及可以按模式来查找数据库。
现在我们来看看目前有多少个库
mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | jobs | | mysql | | performance_schema | | sys | +--------------------+ 5 rows in set (0.00 sec)
那如果我想查找以s结尾的库有哪些,怎样去查
mysql> SHOW DATABASES LIKE '%s'; +---------------+ | Database (%s) | +---------------+ | jobs | | sys | +---------------+ 2 rows in set (0.00 sec)
选择数据库
如果我们想在数据库里建表、或新增或删除数据等操作,首先必须要做的操作是选定该数据库。只有选定了数据库,这些操作才有意义、才能正确执行。
选择数据库的操作非常简单,语法如下:
use 数据库名
mysql> USE jobs; Database changed
这样,就选定了jobs这个库。
修改库
当我发现建立的时候,字符集或校对集设置的不对的时候,该如何更改呢?
语法:
ALTER DATABASES 库名 CHASET 字符集名 COLLATE 校对集名
可以看到,修改和新增的操作基本一样,除了CREATE改为了ALTER。
删除库
之前建立的库名识jobs,但现在觉得最后的s可以不要。那么可以更改库名吗?不好意思,库名是修改不了的,只能先删除库jobs,然后重新建立库job。
删库语法:
DROP DATABASE [IF EXISTS] 库名
mysql> DROP DATABASE IF EXISTS jobs; Query OK, 0 rows affected (0.01 sec) mysql> CREATE DATABASE job -> CHARSET utf8mb4 -> COLLATE utf8mb4_general_ci; Query OK, 1 row affected (0.00 sec)
注意:删除是一个极度危险的操作。真的删库跑路就惨了哦!