DDL语言

#DDL
/*
数据定义语言
库和表的管理
一、库的管理
创建、修改、删除
二、表的管理
创建、修改、删除
创建: create
修改: alter
删除: drop
*/

一.库的管理

1.库的创建

/*
语法:
create database [if not exists]库名;
*/
#案例:创建库Books

CREATE DATABASE IF NOT EXISTS books ;

刷新,发现books库已经创立成功

2.库的修改

语法:修改库名
RENAME DATABASE 旧库名 TO 新库名;
库名修改语法现在已经停止,无法修改,只能手动在后台更改文件名

语法:修改字符集
ALTER DATABASE 库名 CHARACTER SET gbk;

3.库的删除
语法:DROP DATABASE IF EXISTS 库名;

DROP DATABASE IF EXISTS books;

刷新发现books 库已经删除。

二.表的管理

首先把刚才的books库创建出来
1.表的创建

语法:
create table 表名(
列名 列的类型【(长度) 约束】,
列名 列的类型【(长度) 约束】,
列名 列的类型【(长度) 约束】, …
列名 列的类型【(长度) 约束】
)
#长度和约束可选

#案例:创建表Book

CREATE TABLE book(
id INT,#编号
bookname VARCHAR(50),#书名最大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 列名 【列类型 约束】;
*/

add:添加
drop:删除
modify:修改
change:改变

#①修改列名

ALTER TABLE 表名 CHANGE COLUMN 旧列名 新列名 新列名类型;

其中COLUMN可以省略

ALTER TABLE book CHANGE COLUMN publishdate pubDate DATETIME;

发现 pubDate列已经修改成功

#②修改列的类型或约束

ALTER TABLE表名 MODIFY COLUMN 列名 新的类型或约束;

MODIFY:修改

ALTER TABLE book MODIFY COLUMN pubdate TIMESTAMP;

#③添加新列

ALTER TABLE 表名 ADD COLUMN 列名 类型;

#④删除列

ALTER TABLE 表名 DROP COLUMN 列名;

#⑤修改表名

ALTER TABLE 表名 RENAME TO 新表名;

三.表的删除

#通用的写法:

DROP TABLE IF EXISTS 旧表名;

一般创建表或数据库时都是先删一面。再创建。

SHOW TABLES; #查看当前库的所有表

四.表的复制

先查看下我们需要的表 结构

先插入数据

#1.仅仅复制表的结构

CREATE TABLE 新表名 LIKE 已存在表名;

CREATE TABLE copy LIKE author;

books数据库里有啦copy表,copy表只有结构,没有数据

#2.复制表的结构+数据

CREATE TABLE 新表名
SELECT * FROM 已存在表名;

就是在复制表的结构时后面加上一个子查询。

CREATE TABLE copy2
SELECT * FROM author;SELECT * FROM copy2;

#只复制部分数据
就是在复制表的结构时后面加上一个子查询。子查询添加筛选条件

CREATE TABLE copy3
SELECT id,au_name
FROM author
WHERE nation='中国';

电气专业的计算机萌新,写博文不容易。如果你觉得本文对你有用,请点个赞支持下,谢谢。


mysql数据库入门教程(7):库和表的管理相关推荐

  1. mysql数据库入门教程(5):多表操作(连接查询,子查询,分页查询,联合查询)

    前文介绍了单表查询:mysql数据库入门教程(4):查询讲解大全 今天介绍下多表查询 一.连接查询 含义:又称多表查询,当查询的字段来自于多个表时,就会用到连接查询 先送上下面所讲用到的sql脚本 h ...

  2. mysql数据库入门教程(11):视图讲解大全

    一.视图的介绍 含义:虚拟表,和普通表一样使用 mysql5.1版本出现的新特性,是通过表动态生成的数据 举例说明什么是视图:假设一个年级有10个班,上面有领导来啦,说要检查舞蹈功底,学校为了应付检查 ...

  3. mysql数据库入门教程(6):数据的增删改

    前面两篇博文介绍了数据库的查询 mysql数据库入门教程(4):查询讲解大全 mysql数据库入门教程(5):多表操作(连接查询,子查询,分页查询,联合查询) 今天介绍下数据库的增删改. 数据库基本操 ...

  4. 【MySQL数据库入门】:库的操作

    文章目录 库的操作 1 创建数据库 2 创建数据库案例 3 字符集和校验规则 3.1 查看系统默认字符集以及校验规则 3.2 查看数据库支持的字符集 3.3 查看数据库支持的字符集校验规则 3.4 校 ...

  5. mysql数据库入门教程

    Markdown database notebook Markdown database notebook 1.1. Mysql知识/基础 1.1.1. Msyql的基本知识 1.2. Mysql知识 ...

  6. MySQL数据库入门教程超详细

    点击查看MySQL优化文章 一.写在前面 黑窗口启动mysql服务: net start mysql 登录:mysql -u root -p 备份数据库: mysqldump -uroot -p123 ...

  7. mysql查询时给字段加内容,mysql数据库查询之对应库对应表中的注释信息查询以及加字段查询...

    select * from information_schema.columns where table_schema = 'db' #表所在数据库 and table_name = 'tablena ...

  8. mysql数据库入门教程(14):函数

    函数 #函数 /* 含义:一组预先编译好的SQL语句的集合,理解成批处理语句 1.提高代码的重用性 2.简化操作 3.减少了编译次数并且减少了和数据库服务器的连接次数,提高了效率 区别: 存储过程:可 ...

  9. mysql数据库入门教程(13):存储过程

    存储过程 过程块sql主要有两种类型,几命名块和匿名块.匿名块每次执行时都要编译,而且不能存储到存储过程中,也不能在其他过程化sql块中调用,过程和函数时命名块,他们在编译时保存在数据库中,成为持久型 ...

最新文章

  1. 分享Css3设计---纯Css实现超酷的iphone玻璃气泡效果
  2. 跨浏览器开发经验总结(三)
  3. fullpage 单屏高度超过屏幕高度,实现单屏内可以滚动并解决手机端单屏高度不正确的问题
  4. CV之detectron2:detectron2的简介、安装、使用方法之详细攻略
  5. 有线同步--ASP007
  6. 表的插入、更新、删除、合并操作_5_通过其它表插入
  7. solr mysql数据注入_(solr系列:四)将mysql数据库中的数据导入到solr中
  8. oracle开归档服务器,ORACLE RAC 启用归档
  9. linux-文件路径
  10. JavaScript + CSS3 实现的海报画廊特效
  11. 【iOS】Touch Up Inside 和 Touch Up Outside 的区别
  12. Flutter获取assets中的图像
  13. M1 Mac 屏幕截图录像工具:CleanShot X
  14. 关于消息队列的一些问题
  15. pathogen插件管理器学习笔记
  16. presto日期转换及计算
  17. 计算机会计数据处理流程是怎样的,实现会计电算化后,会计数据的处理流程依旧和手工..._高级会计师_帮考网...
  18. 【无标题】利润与利润提成
  19. 工厂(Factory)模式
  20. 工业4.0万物联网兴起 智能手机或将消亡

热门文章

  1. 第一阶段:Java基础之数组
  2. Mybatis更新和删除数据
  3. Visual C++——《可视化编程技术》课程考核
  4. Java Web——ResponseBean类DEMO
  5. 赫夫曼编码-译码器(Huffman Coding)
  6. CG CTF WEB COOKIE
  7. RedMine 1.3.3 安装攻略
  8. Spring-学习笔记04【Spring的常用注解】
  9. 2018年 第09届 蓝桥杯 Java B组 决赛真题详解及小结
  10. Fiddler抓包使用教程-模拟低速网络环境