学习目标:
Task00:绪论 - 环境搭建
Task01:初识数据库
学习内容:
- MySQL 8.0 的安装
- 数据库的一些基本知识
学习时间:
课程内容较为简单因此不占用太多时间
1、 12.12晚
2、 12.13下午
3、 12.14下午
学习产出:
SQL语句以DML为主,我们着重记录一些。
DML(Data Manipulation Language,数据操纵语言) 用来查询或者变更表中的记录。DML 包含以下几种指令。
- SELECT :查询表中的数据
- INSERT :向表中插入新数据
- UPDATE :更新表中的数据
- DELETE :删除表中的数据
SQL语句书写规则
- 以分号;结尾
- SQL语句不区分关键字大小写但是数据区分
- 常数书写是固定的
‘abc’, 1234, ‘26 Jan 2010’, ‘10/01/26’, ‘2010-01-26’… - 单词间用半角空格隔开
语法规则
- 数据库的创建( CREATE DATABASE 语句)
CREATE DATABASE name(即为表名)
- 表的创建( CREATE TABLE 语句)
CREATE TABLE product
列名 数据类型(INTEGER,CHAR,VARCHAR,DATE) 约束(NOT NULL非空,PRIMARY KEY主键约束)
(product_id CHAR(4) NOT NULL,
product_name VARCHAR(100) NOT NULL,
product_type VARCHAR(32) NOT NULL,
sale_price INTEGER ,
purchase_price INTEGER ,
regist_date DATE ,
PRIMARY KEY (product_id));
只能使用半角英文字母、数字、下划线(_)作为数据库、表和列的名称,且开头必须为英文字母
- 表的删除
作用 | 语法 |
---|---|
删除表 | DROP TABLE + name |
添加列 | ALTER TABLE + name + ADD COLUMN + 列的定义 |
删除列 | ALTER TABLE < 表名 > DROP COLUMN < 列名 > |
清空表 | TRUNCATE TABLE TABLE_NAME |
删除的表是无法恢复的,只能重新插入,请执行删除操作时无比要谨慎。
- 数据的更新
UPDATE <表名>
SET <列名> = <表达式> [, <列名2>=<表达式2>...];
WHERE <条件>; -- 可选,非常重要。
ORDER BY 子句; --可选
LIMIT 子句; --可选
使用 update 时要注意添加 where 条件,否则将会将所有的行按照语句修改
多列更新
UPDATE product
SET sale_price = sale_price * 10,
purchase_price = purchase_price / 2
WHERE product_type = '厨房用具';
- 向表中插入数据
基本语法:
INSERT INTO <表名> (列1, 列2, 列3, ……) VALUES (值1, 值2, 值3, ……)
对表进行全列 INSERT 时,可以省略表名后的列清单。这时 VALUES子句的值会默认按照从左到右的顺序赋给每一列。
可以使用INSERT … SELECT 语句从其他表复制数据。
例子:
-- 将商品表中的数据复制到商品复制表中
INSERT INTO ProductCopy (product_id, product_name, product_type, sale_price, purchase_price, regist_date)
SELECT product_id, product_name, product_type, sale_price,
purchase_price, regist_date
FROM Product;
作业比较简单不再赘述,仅说明一点
删除的表是无法恢复的,只能重新插入,请执行删除操作时无比要谨慎。
删除的表是无法恢复的,只能重新插入,请执行删除操作时无比要谨慎。
删除的表是无法恢复的,只能重新插入,请执行删除操作时无比要谨慎。
(一般来说删除表是无法恢复的,如在事务控制条件下则可以。)
TRANSCATION;
DROP TABLE Addressbook;
ROLLBACK;