MySQl创建数据库与管理表

创建数据库与管理表


基础知识

完整的数据存储过程

同时,数据库系统层次

数据库服务器 -》 数据库 -》 数据表 -》 行与列

数据库命名规则

库名、表名不得超过30字符;变量名(字段)不超过29字符

只能包含A-Z、a-z、0-9和_

都不能包含空格

保持字段名和类型一致性。不同表中相同含义字段,类型一致,都是整型或字符型

数据类型:

常用几类介绍


创建和管理数据库

创建数据库:

创建数据库

并指定字符集

并判断是否存在(推荐)

注意:DATABASE 不能改名。

一些可视化工具可以改名,它是建新库,把所有表复制到新库,再删旧库完成的。

使用数据库:

查看所有数据库

查看正在使用数据库

查看数据库中所有表

查看数据库创建信息

使用数据库

修改数据库:DROP

删除数据库

并判断是否存在(推荐)

删除操作无法撤销


创建表

基础创建表:CREATE TABLE

其中表名、字段名、数据类型、长度 必须指定

约束条件和默认值 可选

8.0版本不推荐给int指定长度

展示表的信息:DESC

复制创建新表: AS SELECT

此时,表结构和books表一样,包括内容也会导入

复杂一些,可以直接将多个表合并。通过多表查询

在SELECT中给字段起别名,则这个新表该字段就叫别名

不想要表数据,可以再加WHERE条件,例如加个department_id>10000

或者 直接加个WHERE 1=2; 那么复制的新表就没有数据


管理表

修改表:ALTER

添加一个字段:ADD

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

分别是添加location_id字段到最后,添加manager_id字段到department_name后

若将AFTER改为FIRST,则添加到第一个字段位置

修改字段类型:MODIFY

修改数据类型、长度、默认值、位置

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

第二个是修改字段email类型varchar并将位置放在字段第一位

重命名一个字段:CHANGE

修改字段名同时可以修改字段类型

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

删除一个字段: DROP

ALTER TABLE 表名 DROP 【COLUMN】字段名

修改表名:RENAME TABLE ... TO

或者 ALTER TALBE emp_dep2 RENAME TO emp_dep3

删除表:DROP TABLE

操作不可撤销

清空表:TRUNCATE TABLE

操作不能撤销


COMMIT和ROLLBACK操作

COMMIT: 提交数据,一旦执行,则数据永久保存在数据库中,之前的内容不能再回滚了

ROLLBACK: 回滚,执行回滚数据,将数据回滚到最近的一次的COMMIT保存

DELETE FROM 也是清空表操作

DLL操作执行后,一定会执行COMMIT操作,不论是false还是true,所以无法回滚

这些执行来下,表中数据不变

相关推荐
陈天伟教授3 小时前
人工智能训练师认证教程(2)Python os入门教程
前端·数据库·python
陈文锦丫3 小时前
MQ的学习
java·开发语言
乌暮3 小时前
JavaEE初阶---线程安全问题
java·java-ee
爱笑的眼睛113 小时前
GraphQL:从数据查询到应用架构的范式演进
java·人工智能·python·ai
Seven973 小时前
剑指offer-52、正则表达式匹配
java
Elastic 中国社区官方博客3 小时前
Elasticsearch:在分析过程中对数字进行标准化
大数据·数据库·elasticsearch·搜索引擎·全文检索
聪明努力的积极向上3 小时前
【MYSQL】字符串拼接和参数化sql语句区别
数据库·sql·mysql
代码or搬砖4 小时前
RBAC(权限认证)小例子
java·数据库·spring boot
神仙别闹4 小时前
基于QT(C++)实现学本科教务系统(URP系统)
数据库·c++·qt
青蛙大侠公主4 小时前
Thread及其相关类
java·开发语言