本篇文章主要是对MySQL学习时的一些总结,作为学习笔记记录。
数据来源
数据部分来自于b站尚硅谷MySQL课程
DDL
DDL(Data Define Languge)为数据定义语言,主要是对库和表进行管理。
库的管理
在库的管理中可以使用exists进行容错处理。
创建
CREATE DATABASE IF NOT EXISTS databasename;
修改
RENAME DATABASE olddatabasename TO newdatabasename;
但现在一般都不支持这样的语法,如果要修改的话,还是要到数据库所在文件夹中进行更改。
删除
DROP DATABASE IF EXISTS databasename;
表的管理
创建
CREATE TABLE tablename (
colname1 coltype1 [ (length1) constraint1 ],
colname1 coltype1 [ (length1) constraint1 ],
......
);
若要创建一个关于book的表,则有:
CREATE TABLE book (
id INT,
bookName VARCHAR (20),
price DOUBLE,
authorID INT,
publishDate DATETIME
) ;
修改
ALTER TABLE tablename CHANGE/ADD/DROP/MODIFY COLUMN colname1 [coltype1 constraint1];
主要操作有:
#案例1:修改列名
ALTER TABLE book CHANGE COLUMN publishDate pubDate DATETIME ;
#案例2:修改列的类型或约束
ALTER TABLE book MODIFY COLUMN pubDate TIMESTAMP;
#案例3:添加新列
ALTER TABLE book ADD COLUMN lang VARCHAR(10);
#案例4:删除列
ALTER TABLE book DROP COLUMN lang;
#案例5:修改表名
ALTER TABLE book RENAME TO books;
删除
DROP TABLE IF EXISTS tablename;
对于数据库和表来说,使用exists可以增加代码的容错性。
复制
首先创建一个基础表:
CREATE TABLE book (
id INT,
bookName VARCHAR (20),
price DOUBLE,
authorID INT,
publishDate DATETIME
) ;
INSERT INTO book
VALUES
(1, '人生', 10, 109, '1983-02-03'),
(2, '起风了', 9, 308, '2001-05-20'),
(3, '红高粱', 20, 489, '2010-01-15') ;
主要操作有:
#案例1:仅仅复制表的结构
CREATE TABLE book_copy LIKE book
#案例2:复制表的结构+数据
CREATE TABLE book_copy2 SELECT * FROM book;
#案例3:只复制部分数据
CREATE TABLE book_copy3 SELECT * FROM book WHERE id >= 2;
#案例4:仅仅复制某些字段
CREATE TABLE book_copy4 SELECT id,bookName,price FROM book WHERE id >= 2;
本文总结了MySQL中的DDL语句,包括创建、修改和删除数据库及表的操作。详细介绍了如何使用CREATE DATABASE、ALTER TABLE和DROP TABLE等命令,并通过实例展示了如何管理表的结构,如改变列名、类型、添加和删除列,以及复制表结构和数据。
1578

被折叠的 条评论
为什么被折叠?



