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,所以无法回滚

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

相关推荐
weixin_4407841138 分钟前
【HandlerThread实现原理】
android·java·开发语言
毛驴赶鹿40 分钟前
【金仓数据库征文】KES V9性能调优实战记录:从慢SQL排查到全链路优化
数据库·sql
leoZ23143 分钟前
本地跑大模型实战(七):llama.cpp 性能调优,让推理更快更省
java·人工智能·spring·生成对抗网络·语言模型·自然语言处理·llama
码农阿豪1 小时前
【金仓数据库征文】Mac开发环境|SpringBoot3 + MyBatisPlus对接KES V9 Docker实战全指南
数据库·macos·docker
杨云龙UP1 小时前
MySQL 数据库常用备份工具对比:mysqldump、mydumper 与 XtraBackup
linux·运维·服务器·数据库·mysql·dba·备份恢复
ZENERGY-众壹1 小时前
500个工商业电站压垮数据库?海量光伏时序数据存储的架构取舍
数据库·架构·influxdb·光伏·光伏运维
mubei-1232 小时前
SpringDAO的用法
java·开发语言·数据库
happymagic2 小时前
java spring boot做的jar包程序,如何实现自动运行启动
java·运维·服务器·spring boot·jar
心灵Haven4 小时前
Centos7 + Mysql8.0
mysql·centos
星蓝_starblue5 小时前
零服务器、零数据库!开源growth-board,利用GitHub自动管理刷题/学习/求职全流程
服务器·数据库·程序人生·系统架构·node.js·github·改行学it