MySQL学习笔记(六)-MySQL中库和表的管理
MySQL学习笔记(六)-MySQL中库和表的管理
作者:就叫易易好了
日期:2020/11/23
1
2
DDL即数据定义语言
创建:create
修改:alter
删除:drop
库和表的管理:
一、库的管理
1、库的创建
语法:
create database 库名;
案例:创建库Books
CREATE DATABASE Books;
如果已经存在Books数据库,那么编译器就会报错
所以不确定有没有要创建的数据库的时候
我们可以采用以下语句:
CREATE DATABASE IF NOT EXISTS Books;
这样的话如果存在Books数据库,也不会报错
不存在这个数据库,就会创建这个数据库
1
2
3
4
5
6
7
8
此时数据库里就多了一个Books库
一般建立的数据库的位置在
你安装的盘/MySQL/mysql server/data
2、库的修改
如果要修改库名的话,目前没有语句可以修改(安全性低)
可以通过上面说的库的地址,直接重命名库的名字。
没事别瞎改
3、删库跑路
DROP DATABASE Books;
或者
DROP DATABASE IF EXISTS Books;(推荐)
1
2
3
二、表的管理
语法:
create table 表名
(
列名 列的类型【(长度) 约束】,
列名 列的类型【(长度) 约束】,
1
…
列名 列的类型【(长度) 约束】
1
)
1、表的创建
创建一个表,名字是Book
CREATE TABLE Book(
id INT,#编号
bName VARCHAR(20),#图书名
price DOUBLE,#价格
authorid INT,#作者编号
publishDate DATETIME #出版日期
);
1
2
3
4
5
6
7
在这里插入图片描述
再来一个作者表
CREATE TABLE author (
id INT,
author_name VARCHAR(20),
nation VARCHAR(10) #国籍
);
1
2
3
4
5
在这里插入图片描述
2、表的修改
语法:
alter table 表名 add|drop|modify|change conlumn
2.1 修改列名
如果我想把book表里的publishDate改成PD,可以这样写:
ALTER TABLE book CHANGE COLUMN publishdate PD DATETIME;
1
2.2 修改列的类型或约束
如果我要把book表里的PD改成timestamp类型
ALTER TABLE book MODIFY COLUMN PD TIMESTAMP;
1
2.3 添加新列
如果我要在author表中添加一个annual列,可以使用以下语句
ALTER TABLE author ADD COLUMN annual DOUBLE;
1
2.4 删除列
现在我要把刚才在author表中添加的列删除,可以使用以下语句:
ALTER TABLE author DROP COLUMN annual;
1
2.5 修改表名
如果我要把book表重命名为bookname,可以使用一下语句
ALTER TABLE book RENAME TO bookname;
1
3、表的删除
现在我要删除bookname这个表格
DROP TABLE bookname;
1
4、表的复制
先在author表中插入几个数据
INSERT INTO author VALUES
(1,‘余秋雨’,‘中国’),
(2,‘贾平凹’,‘中国’),
(3,‘东野圭吾’,‘日本’),
(4,‘莫言’,‘中国’);
1
2
3
4
5
此时author表格为:
在这里插入图片描述
4.1 只复制表的结构
CREATE TABLE copy LIKE author;
1
此时copy表中的结构和author表一样,但是没有数据。
4.2 复制表的结构和数据
CREATE TABLE copy_2
SELECT * FROM author;
1
2
4.3 只复制部分数据
CREATE TABLE copy_3
SELECT id,author_name
FROM author
WHERE nation=‘中国’;
1
2
3
4
4.4 只复制某些字段
CREATE TABLE copy_4
SELECT id,author_name
FROM author
WHERE 100=200; #一个恒不成立的条件,这时就是空表了,只有两个表头
或者写成WHERE 0;
1
2
3
4
5
未完待续
MySQL学习笔记(六)-MySQL中库和表的管理相关推荐
- MySQL学习笔记 | 04 - MySQL数据库基本操作(增加、修改、删除、查看)
MySQL学习笔记 | 01-为什么要使用数据库 MySQL学习笔记 | 02 - MySQL在Windows下的安装.配置.服务启动/停止.用户登录.查看版本号 MySQL学习笔记 | 03 - M ...
- 【theano-windows】学习笔记六——theano中的循环函数scan
前言 Scan是Theano中最基础的循环函数, 官方教程主要是通过大量的例子来说明用法. 不过在学习的时候我比较习惯先看看用途, 然后是参数说明, 最后再是研究实例. 国际惯例, 参考网址 官网关于 ...
- 高性能MySQL学习笔记(1) —— MySQL架构
MySQL架构 1.MySQL逻辑架构: 这里分为三层: 1.连接层:连接与线程处理,这一层并不是MySQL独有,一般的基于C/S架构的都有类似组件,比如连接处理.授权认证.安全等. 2.SQL处理层 ...
- 一千行MySQL学习笔记(MySQL常见SQL语句全详解)
/* 启动MySQL */ net start mysql/* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码/* 跳过权限验证登录MySQL */ mysqld ...
- MySQL学习笔记:MySQL管理
文章目录 一.准备工作 1.查看MySQL安装目录 2.启动MySQL服务 二.MySQL数据库管理 1.查看数据库 2.创建数据库 3.显示数据库创建信息 4.使用数据库 5.显示当前打开的数据库 ...
- mysql学习笔记(六)
存储引擎(mysql中 特有的) (86条消息) 我以为我对Mysql事务很熟,直到我遇到了阿里面试官_公号:黎杜编程的博客-CSDN博客 关系数据库表是用于存储和组织信息的数据结构,可以将表理解为由 ...
- MySQL学习笔记之MySQL安装详解
前言 虽然现在NoSQL发展迅速,但MySQL还是非常受欢迎的,成千上万的公司依旧采用LAMP OR LNMP的搭配来进行开发,因此MYSQL的学习还是有一定的必要. 安装环境:Windows 7,需 ...
- MySQL学习笔记-03高级查询、多表联合查询、聚合函数、子查询、视图、存储过程、权限、
关于作者 金山老师:从事Java.大数据.Python职业化培训6年,项目管理.软件开发14年.欢迎添加我的微信号[jshand],最近建了一些微信交流群,扫描下方二维码添加公众号,回复:进群 文章目 ...
- MySql学习笔记(一):创建数据库,创建表,加载数据,数据检索
一.准备工作 1.1 安装mysql 一路next的操作这里就不做记录了. 1.2 配置mysql 安装完成后,将下面路径C:\Program Files\MySQL\MySQL Server 5.7 ...
最新文章
- 我给 Apache 顶级项目提了个 Bug
- python 删除链表中的重复元素
- Python之路--Python基础12--并发编程之协程
- LeetCode—222. 完全二叉树的节点个数
- java控制cmd导出dmp文件_cmd的操作命令导出导入.dmp文件
- 大数据技术原理与应用-概述
- js 获取最后一个字符
- Linux 文件描述符的概念及与文件流指针的关系
- 自学前端,需要学习哪些知识点?学多久可以入职前端工程师?
- 计算机网络学习笔记(23. HTTP连接类型)
- Atitit usrQBF2312 命名空间pkg 以及 api命名 spec规范
- C语言从字符串中提取数字
- php js 批量打开页面
- word文档添加多个目录
- 【强制转换】 | PTA 7.1厘米换算英尺英寸
- 深入浅出--何为多线程(引用自大神Kyrie lrving)
- 【扫盲】硬盘接口『 SATA 、 mSATA 、 m.2 ( NGFF )、PCI-E ( PICe 、 PCI Express ) 』及其协议 『 NVMe 、 AHCI 』
- node用express写后端restful接口实战三:sequelize操作数据库:模型(Model)、迁移(Migration)与种子(Seeders)
- 读书有益——》祝你今天愉快
- React 界面样式设计
热门文章
- Windows10配置Git远程连接到github(全网简单教程)
- linux 巡检手册,服务器设备系统巡检标准手册.doc
- jvm原理、启动时间、与编译器操作系统关系
- mybatis萌新基础
- java setlayout_Java Button.setLayoutX方法代码示例
- sublime开发php插件下载,SublimeText3 配置PHP开发插件
- 我该学习哪个人工智能系统
- WARNING: IPv4 forwarding is disabled. Networking will not work.
- 如何用python删除异常值_Python机器学习:异常值查找和处理
- 一个类可以实现多个接口吗_java中接口的概念