MySQL学习笔记 ------ 库和表的管理

#DDL

/*

数据定义语言

库和表的管理

一、库的管理

创建、修改、删除

二、表的管理

创建、修改、删除

创建: create

修改: alter

删除: drop

*/

#一、库的管理

#1、库的创建

/*

语法:

create database if not exists库名;

*/

#案例:创建库Books

CREATE DATABASE IF NOT EXISTS books ;

#2、库的修改

RENAME DATABASE books TO 新库名;#现在一般不支持修改,最好不要改

#更改库的字符集

ALTER DATABASE books CHARACTER SET gbk;

#3、库的删除

DROP DATABASE IF EXISTS books;

#二、表的管理

#1.表的创建 ★

/*

语法:

create table 表名(

列名 列的类型【(长度) 约束】,

列名 列的类型【(长度) 约束】,

列名 列的类型【(长度) 约束】,

...

列名 列的类型【(长度) 约束】

)

*/

#案例:创建表Book

CREATE TABLE book(

id INT,#编号

bName VARCHAR(20),#图书名

price DOUBLE,#价格

authorId INT,#作者编号

publishDate DATETIME#出版日期

);

DESC book;

#案例:创建表author

CREATE TABLE IF NOT EXISTS author(

id INT,

au_name VARCHAR(20),

nation VARCHAR(10)

);

DESC author;

#2.表的修改

/*

语法

alter table 表名 add|drop|modify|change column 列名 【列类型 约束】;

*/

#①修改列名

ALTER TABLE book CHANGE COLUMN publishdate pubDate DATETIME;

#②修改列的类型或约束

ALTER TABLE book MODIFY COLUMN pubdate TIMESTAMP;

#③添加新列

ALTER TABLE author ADD COLUMN annual DOUBLE;

#④删除列

ALTER TABLE book_author DROP COLUMN annual;

#⑤修改表名

ALTER TABLE author RENAME TO book_author;

DESC book;

#3.表的删除

DROP TABLE IF EXISTS author;

#查看当前库的所有表

SHOW TABLES;

#创建新库/表的通用写法------先把旧的删一遍------

DROP DATABASE IF EXISTS 旧库名;

CREATE DATABASE 新库名;

DROP TABLE IF EXISTS 旧表名;

CREATE TABLE 表名();

#4.表的复制

INSERT INTO author VALUES

(1,'村上春树','日本'),

(2,'莫言','中国'),

(3,'冯唐','中国'),

(4,'金庸','中国');

DESC author;#显示表的属性

SELECT * FROM Author;

SELECT * FROM copy2;

#1.仅仅复制表的结构

CREATE TABLE copy LIKE author;

#2.复制表的结构+数据

CREATE TABLE copy2

SELECT * FROM author;

#只复制部分数据

CREATE TABLE copy3

SELECT id,au_name

FROM author

WHERE nation='中国';

#仅仅复制某些字段-----非零为真-----

CREATE TABLE copy4

SELECT id,au_name

FROM author

WHERE 0;

SELECT * FROM copy4;

相关推荐
Y381532662几秒前
SerpBase + RAG 实战:用搜索 API 给知识库接上实时数据,回答不再过期
java·服务器·数据库
骑着蜗牛撵大象327几秒前
SQL 编辑器不是高级记事本:KStudio 与 KSQL Developer 里的建表与增删改查手法
数据库·sql·mysql·编辑器·crud·执行计划
北风toto4 分钟前
银河麒麟 V10 内网 YUM 源修复实战教程(U盘中转版)
linux·服务器
辣知5 分钟前
辣知·化智81 儒释道中国人独有的智慧
学习
Access开发易登软件5 分钟前
我全新开发了一套 Access 通用 Excel 导入工具,现在开源了
数据库·microsoft·excel·mfc·vba·access·access开发
Mabnus6 分钟前
补体级联放大启动酶C2
学习
Xudde.8 分钟前
Billu: box 靶机渗透测试(Vulnhub Writeup)
笔记·学习·安全·web安全
小白鸽i10 分钟前
【linux】麒麟桌面版安装人大金仓V8
linux·运维
笃行35013 分钟前
SQL编辑器的隐藏技能:KingbaseES 配套 KSQL Developer 使用笔记
数据库
Ruiery15 分钟前
Linux 6.6内核内存管理深度解析(三):页表与缺页处理 — 虚拟地址怎么按需映射到物理页
linux·运维·服务器