MySQL数据库和表的管理

数据库

创建数据库

创建数据库并指定字符集,mysql强烈建议utf8mb4

CREATE DATABASE IF NOT EXISTS 数据库名 CHARACTER SET 字符集;

# 例子
# CREATE DATABASE IF NOT EXISTS db CHARACTER SET "utf8mb4";

注意:DATABASE 不能改名。一些可视化工具可以改名,它是通过建新库,把所有表复制到新库,再删除旧库完成的。

使用数据库

  • 查看当前所有的数据库
# 有一个S,代表多个数据库
SHOW DATABASES;
  • 查看当前正在使用的数据库
# 使用的一个mysql中的全局函数
SELECT DATABASE();

查看指定库下所有的表

SHOW TABLES FROM 数据库名;

查看数据库的创建信息

SHOW CREATE DATABASE 数据库名;
或者:
SHOW CREATE DATABASE 数据库名\G

使用/切换数据库

USE 数据库名;

注意:要操作表格和数据之前必须先说明是对哪个数据库进行操作,否则就要对所有对象加上“数据库名.”。

修改数据库

  • 更改数据库字符集
ALTER DATABASE 数据库名 CHARACTER SET 字符集;

删除数据库

DROP DATABASE IF EXISTS 数据库名;

创建表

  • 必须具备
    • CREATE TABLE 权限
    • 存储空间
  • 语法格式
CREATE TABLE [IF NOT EXISTS] 表名(
	字段1, 数据类型 [约束条件] [默认值],
	字段2, 数据类型 [约束条件] [默认值],
	字段3, 数据类型 [约束条件] [默认值],
	……
	[表约束条件]
);
  • 必须指定
    • 表名
    • 列名,数据类型,长度

查看表结构

DESC 表名;

查看创建表的语句

SHOW CREATE TABLE 表名;

修改表

修改表指的是修改数据库中已经存在的数据表的结构。

使用 ALTER TABLE 语句可以实现:

  • 向已有的表中添加列
  • 修改现有表中的列
  • 删除现有表中的列
  • 重命名现有表中的列

添加一列

ALTER TABLE 表名 ADD 【COLUMN】 字段名 字段类型 【FIRST|AFTER 字段名】;

修改一列

ALTER TABLE 表名 MODIFY 【COLUMN】 字段名1 字段类型,字段名2 字段类型.... 【DEFAULT 默认值】【FIRST|AFTER 字段名
2】;

重命名一列

ALTER TABLE 表名 CHANGE 【column】 列名 新列名 新数据类型;

删除一列

ALTER TABLE 表名 DROP 【COLUMN】字段名;

重命名表

RENAME TABLE 表名 TO 新表名;
# 或者
ALTER TABLE 表名 RENAME [TO] 新表名;

删除表

  • 在MySQL中,当一张数据表没有与其他任何数据表形成关联关系时,可以将当前数据表直接删除。
  • 数据和结构都被删除
  • 所有正在运行的相关事务被提交
  • 所有相关索引被删除
  • DROP TABLE 语句不能回滚
DROP TABLE IF EXISTS 表名;

清空表

  • 只删除表的数据,保留表的结构字段
  • TRUNCATE语句不能回滚,而使用 DELETE 语句删除数据,可以回滚
TRUNCATE TABLE 表名;

最后编辑时间:2022年3月3日23:01:20

posted @ 2022-03-03 23:02  tothk  阅读(29)  评论(0编辑  收藏  举报