mysql数据库入门教程(7):库和表的管理
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):库和表的管理相关推荐
- mysql数据库入门教程(5):多表操作(连接查询,子查询,分页查询,联合查询)
前文介绍了单表查询:mysql数据库入门教程(4):查询讲解大全 今天介绍下多表查询 一.连接查询 含义:又称多表查询,当查询的字段来自于多个表时,就会用到连接查询 先送上下面所讲用到的sql脚本 h ...
- mysql数据库入门教程(11):视图讲解大全
一.视图的介绍 含义:虚拟表,和普通表一样使用 mysql5.1版本出现的新特性,是通过表动态生成的数据 举例说明什么是视图:假设一个年级有10个班,上面有领导来啦,说要检查舞蹈功底,学校为了应付检查 ...
- mysql数据库入门教程(6):数据的增删改
前面两篇博文介绍了数据库的查询 mysql数据库入门教程(4):查询讲解大全 mysql数据库入门教程(5):多表操作(连接查询,子查询,分页查询,联合查询) 今天介绍下数据库的增删改. 数据库基本操 ...
- 【MySQL数据库入门】:库的操作
文章目录 库的操作 1 创建数据库 2 创建数据库案例 3 字符集和校验规则 3.1 查看系统默认字符集以及校验规则 3.2 查看数据库支持的字符集 3.3 查看数据库支持的字符集校验规则 3.4 校 ...
- mysql数据库入门教程
Markdown database notebook Markdown database notebook 1.1. Mysql知识/基础 1.1.1. Msyql的基本知识 1.2. Mysql知识 ...
- MySQL数据库入门教程超详细
点击查看MySQL优化文章 一.写在前面 黑窗口启动mysql服务: net start mysql 登录:mysql -u root -p 备份数据库: mysqldump -uroot -p123 ...
- mysql查询时给字段加内容,mysql数据库查询之对应库对应表中的注释信息查询以及加字段查询...
select * from information_schema.columns where table_schema = 'db' #表所在数据库 and table_name = 'tablena ...
- mysql数据库入门教程(14):函数
函数 #函数 /* 含义:一组预先编译好的SQL语句的集合,理解成批处理语句 1.提高代码的重用性 2.简化操作 3.减少了编译次数并且减少了和数据库服务器的连接次数,提高了效率 区别: 存储过程:可 ...
- mysql数据库入门教程(13):存储过程
存储过程 过程块sql主要有两种类型,几命名块和匿名块.匿名块每次执行时都要编译,而且不能存储到存储过程中,也不能在其他过程化sql块中调用,过程和函数时命名块,他们在编译时保存在数据库中,成为持久型 ...
最新文章
- 分享Css3设计---纯Css实现超酷的iphone玻璃气泡效果
- 跨浏览器开发经验总结(三)
- fullpage 单屏高度超过屏幕高度,实现单屏内可以滚动并解决手机端单屏高度不正确的问题
- CV之detectron2:detectron2的简介、安装、使用方法之详细攻略
- 有线同步--ASP007
- 表的插入、更新、删除、合并操作_5_通过其它表插入
- solr mysql数据注入_(solr系列:四)将mysql数据库中的数据导入到solr中
- oracle开归档服务器,ORACLE RAC 启用归档
- linux-文件路径
- JavaScript + CSS3 实现的海报画廊特效
- 【iOS】Touch Up Inside 和 Touch Up Outside 的区别
- Flutter获取assets中的图像
- M1 Mac 屏幕截图录像工具:CleanShot X
- 关于消息队列的一些问题
- pathogen插件管理器学习笔记
- presto日期转换及计算
- 计算机会计数据处理流程是怎样的,实现会计电算化后,会计数据的处理流程依旧和手工..._高级会计师_帮考网...
- 【无标题】利润与利润提成
- 工厂(Factory)模式
- 工业4.0万物联网兴起 智能手机或将消亡