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中库和表的管理相关推荐

  1. MySQL学习笔记 | 04 - MySQL数据库基本操作(增加、修改、删除、查看)

    MySQL学习笔记 | 01-为什么要使用数据库 MySQL学习笔记 | 02 - MySQL在Windows下的安装.配置.服务启动/停止.用户登录.查看版本号 MySQL学习笔记 | 03 - M ...

  2. 【theano-windows】学习笔记六——theano中的循环函数scan

    前言 Scan是Theano中最基础的循环函数, 官方教程主要是通过大量的例子来说明用法. 不过在学习的时候我比较习惯先看看用途, 然后是参数说明, 最后再是研究实例. 国际惯例, 参考网址 官网关于 ...

  3. 高性能MySQL学习笔记(1) —— MySQL架构

    MySQL架构 1.MySQL逻辑架构: 这里分为三层: 1.连接层:连接与线程处理,这一层并不是MySQL独有,一般的基于C/S架构的都有类似组件,比如连接处理.授权认证.安全等. 2.SQL处理层 ...

  4. 一千行MySQL学习笔记(MySQL常见SQL语句全详解)

    /* 启动MySQL */ net start mysql/* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码/* 跳过权限验证登录MySQL */ mysqld ...

  5. MySQL学习笔记:MySQL管理

    文章目录 一.准备工作 1.查看MySQL安装目录 2.启动MySQL服务 二.MySQL数据库管理 1.查看数据库 2.创建数据库 3.显示数据库创建信息 4.使用数据库 5.显示当前打开的数据库 ...

  6. mysql学习笔记(六)

    存储引擎(mysql中 特有的) (86条消息) 我以为我对Mysql事务很熟,直到我遇到了阿里面试官_公号:黎杜编程的博客-CSDN博客 关系数据库表是用于存储和组织信息的数据结构,可以将表理解为由 ...

  7. MySQL学习笔记之MySQL安装详解

    前言 虽然现在NoSQL发展迅速,但MySQL还是非常受欢迎的,成千上万的公司依旧采用LAMP OR LNMP的搭配来进行开发,因此MYSQL的学习还是有一定的必要. 安装环境:Windows 7,需 ...

  8. MySQL学习笔记-03高级查询、多表联合查询、聚合函数、子查询、视图、存储过程、权限、

    关于作者 金山老师:从事Java.大数据.Python职业化培训6年,项目管理.软件开发14年.欢迎添加我的微信号[jshand],最近建了一些微信交流群,扫描下方二维码添加公众号,回复:进群 文章目 ...

  9. MySql学习笔记(一):创建数据库,创建表,加载数据,数据检索

    一.准备工作 1.1 安装mysql 一路next的操作这里就不做记录了. 1.2 配置mysql 安装完成后,将下面路径C:\Program Files\MySQL\MySQL Server 5.7 ...

最新文章

  1. 我给 Apache 顶级项目提了个 Bug
  2. python 删除链表中的重复元素
  3. Python之路--Python基础12--并发编程之协程
  4. LeetCode—222. 完全二叉树的节点个数
  5. java控制cmd导出dmp文件_cmd的操作命令导出导入.dmp文件
  6. 大数据技术原理与应用-概述
  7. js 获取最后一个字符
  8. Linux 文件描述符的概念及与文件流指针的关系
  9. 自学前端,需要学习哪些知识点?学多久可以入职前端工程师?
  10. 计算机网络学习笔记(23. HTTP连接类型)
  11. Atitit usrQBF2312 命名空间pkg 以及 api命名 spec规范
  12. C语言从字符串中提取数字
  13. php js 批量打开页面
  14. word文档添加多个目录
  15. 【强制转换】 | PTA 7.1厘米换算英尺英寸
  16. 深入浅出--何为多线程(引用自大神Kyrie lrving)
  17. 【扫盲】硬盘接口『 SATA 、 mSATA 、 m.2 ( NGFF )、PCI-E ( PICe 、 PCI Express ) 』及其协议 『 NVMe 、 AHCI 』
  18. node用express写后端restful接口实战三:sequelize操作数据库:模型(Model)、迁移(Migration)与种子(Seeders)
  19. 读书有益——》祝你今天愉快
  20. React 界面样式设计

热门文章

  1. Windows10配置Git远程连接到github(全网简单教程)
  2. linux 巡检手册,服务器设备系统巡检标准手册.doc
  3. jvm原理、启动时间、与编译器操作系统关系
  4. mybatis萌新基础
  5. java setlayout_Java Button.setLayoutX方法代码示例
  6. sublime开发php插件下载,SublimeText3 配置PHP开发插件
  7. 我该学习哪个人工智能系统
  8. WARNING: IPv4 forwarding is disabled. Networking will not work.
  9. 如何用python删除异常值_Python机器学习:异常值查找和处理
  10. 一个类可以实现多个接口吗_java中接口的概念