MySQL基础(十三)——DDL

本文总结了MySQL中的DDL语句,包括创建、修改和删除数据库及表的操作。详细介绍了如何使用CREATE DATABASE、ALTER TABLE和DROP TABLE等命令,并通过实例展示了如何管理表的结构,如改变列名、类型、添加和删除列,以及复制表结构和数据。

本篇文章主要是对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;
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值