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;

相关推荐
AOwhisky3 分钟前
Kubernetes 学习笔记:集群管理、命名空间与 Pod 基础
linux·运维·笔记·学习·云原生·kubernetes
Navicat中国35 分钟前
使用 Navicat 导入向导导入 Excel 数据时,系统提示导入成功,表中也能看到数据,但行数统计显示为 0,这是什么原因?
数据库·excel·导入
gmaajt41 分钟前
Golang怎么做国际化多语言_Golang i18n教程【核心】
jvm·数据库·python
光影少年44 分钟前
大屏页面,一次多个请求,请求加密导致 点击 全局时间选择器 时出现卡顿咋解决(面板收起会延迟1~2秒)
前端·javascript·vue.js·学习·前端框架·echarts·reactjs
小龙在慢慢变强..1 小时前
目录结构(FHS 标准)
linux·运维·服务器
折哥的程序人生 · 物流技术专研1 小时前
从“卡死”到“秒过”:WMS销售数据跨库回填的极限优化之旅
数据库·机器学习·oracle
2035去旅行1 小时前
嵌入式开发,如何选择C标准库
linux·arm开发
李可以量化1 小时前
DeepSeek 量化交易实战:用标准化提示词模板实现 AI 辅助交易决策
大数据·数据库·人工智能
刘延林.1 小时前
win11系统下通过 WSL2 安装Ubuntu 24.04 使用RTX 5080 GPU
linux·运维·ubuntu
maqr_1101 小时前
CSS如何利用Sass定义全局阴影方案_通过变量实现统一CSS风格
jvm·数据库·python