diff --git "a/54 \345\217\266\345\255\220\350\261\252/mysql\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232.md" "b/54 \345\217\266\345\255\220\350\261\252/mysql\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..b92958ef39e7a029a0d6afdd7d33ad7d620c043b --- /dev/null +++ "b/54 \345\217\266\345\255\220\350\261\252/mysql\347\254\254\344\270\200\346\254\241\344\275\234\344\270\232.md" @@ -0,0 +1,251 @@ +-- 1、创建数据库test02_library + +```mysql +CREATE DATABASE text02_library; +``` + +-- 2、创建表格books + +```mysql +use test02_library; + +CREATE TABLE books( +b_id int(11), +b_name VARCHAR(50), +`authors` VARCHAR(100), +price FLOAT, +pubdate year, +note VARCHAR(100), +num INT(11) +); +``` + +| -- | 字段名 | 字段说明 | 数据类型 | 允许为空 | 唯一 | +| ---- | ------- | -------- | ------------- | -------- | ---- | +| -- | b_id | 书编号 | int(11) | 否 | 是 | +| -- | b_name | 书名 | varchar(50) | 否 | 否 | +| -- | authors | 作者 | varchar(100) | 否 | 否 | +| -- | price | 价格 | float | 否 | 否 | +| -- | pubdate | 出版日期 | year | 否 | 否 | +| -- | note | 说明 | varchar(100) | 是 | 否 | +| -- | num | 库存 | int(11) | 否 | 否 | + + 3、向books表中插入记录 +-- +-- 1) 指定所有字段名称插入第一条记录 + +```mysql +insert into books(b_id,b_name,author,price,pubdate,note,num) +VALUES(1,'Tal of AAA','Dickes',23,1995,'novel',11); +``` + +-- 2)不指定字段名称插入第二记录 + +```mysql +INSERT into books values(2,'EmmaT','Jane lura',35,1993,'joke',22); +``` + +-- 3)同时插入多条记录(剩下的所有记录) + +```mysql +insert into books(b_id,b_name,author,price,pubdate,note,num) VALUES +(3,'Story of Jane','Jane Tim',40,2001,'novel',0), +(4,'Lovey Day','George Byron',20,2005,'novel',30), +(5,'Old land','Honore Blade',30,2010,'law',0), +(6,'The Battle','Upton Sara',30,1999,'medicine',40), +(7,'Rose Hood','Richard haggard',28,2008,'cartoon',28); +``` + +| -- | b_id | b_name | authors | price | pubdate | note | num | +| ---- | ---- | ------------- | --------------- | ----- | ------- | -------- | ---- | +| -- | 1 | Tal of AAA | Dickes | 23 | 1995 | novel | 11 | +| -- | 2 | EmmaT | Jane lura | 35 | 1993 | joke | 22 | +| -- | 3 | Story of Jane | Jane Tim | 40 | 2001 | novel | 0 | +| -- | 4 | Lovey Day | George Byron | 20 | 2005 | novel | 30 | +| -- | 5 | Old land | Honore Blade | 30 | 2010 | law | 0 | +| -- | 6 | The Battle | Upton Sara | 30 | 1999 | medicine | 40 | +| -- | 7 | Rose Hood | Richard haggard | 28 | 2008 | cartoon | 28 | + +-- 4、将小说类型(novel)的书的价格都增加5。 + +```mysql +update books set price = price+5 WHERE note = 'novel'; +``` + +-- 5、将名称为EmmaT的书的价格改为40。 + +```my + UPDATE books set price=40 where b_name='EmmaT'; +``` + +-- 6、删除库存为0的记录 + +```mysql + delete from books where num=0; +``` + + + +-- 1、创建数据库test03_bookstore + +```mysql +CREATE DATABASE test03_bookstore; +``` + +-- 2、创建book表 + +```mysql +use test03_bookstore; + drop table book; +create table book( +id int(11) PRIMARY KEY auto_increment, +title VARCHAR(100), +author varchar(100), +price DOUBLE(11,2), +sales int(11), +stock int(11), +img_path VARCHAR(100) +``` + +-- +----------+--------------+------+-----+---------+----------------+ +-- | Field | Type | Null | Key | Default | Extra | +-- +----------+--------------+------+-----+---------+----------------+ +-- | id | int(11) | NO | PRI | NULL | auto_increment | +-- | title | varchar(100) | NO | | NULL | | +-- | author | varchar(100) | NO | | NULL | | +-- | price | double(11,2) | NO | | NULL | | +-- | sales | int(11) | NO | | NULL | | +-- | stock | int(11) | NO | | NULL | | +-- | img_path | varchar(100) | NO | | NULL | | +-- +----------+--------------+------+-----+---------+----------------+ + +-- 尝试添加部分模拟数据,参考示例如下: + +```mysql +insert into book values(1,'解忧杂货店','东野圭吾',27.20,102,98,'upload/books/解忧杂货店.jpg'); +insert into book values(2,'边城','沈从文',23.00,102,98,'upload/books/边城.jpg'); +``` + +-- +----+-------------+------------+-------+-------+-------+----------------------------+ +-- | id | title | author | price | sales | stock | img_path | +-- +----+-------------+------------+-------+-------+-------+-----------------------------+ +-- | 1 | 解忧杂货店 | 东野圭吾 | 27.20 | 102 | 98 | upload/books/解忧杂货店.jpg | +-- | 2 | 边城 | 沈从文 | 23.00 | 102 | 98 | upload/books/边城.jpg | +-- +----+---------------+------------+-------+-------+-------+----------------------------+ +-- ``` + +-- 3、创建用户表users,并插入数据 + +```mysql +create table users( +id int(11) PRIMARY KEY auto_increment, +username VARCHAR(100) unique, +passwor VARCHAR(100), +email VARCHAR(100) null +``` + +-- +----------+--------------+------+-----+---------+----------------+ +-- | Field | Type | Null | Key | Default | Extra | +-- +----------+--------------+------+-----+---------+----------------+ +-- | id | int(11) | NO | PRI | NULL | auto_increment | +-- | username | varchar(100) | NO | UNI | NULL | | +-- | password | varchar(100) | NO | | NULL | | +-- | email | varchar(100) | YES | | NULL | | +-- +----------+--------------+------+-----+---------+----------------+ + +-- 尝试添加部分模拟数据,参考示例如下: + +```mysql +insert into users values(1,'admin',112233,'admin@mxdx.com'); +``` + +-- +----+----------+----------------------------------+--------------------+ +-- | id | username | password | email | +-- +----+----------+----------------------------------+--------------------+ +-- | 1 | admin | 112233 | admin@mxdx.com | +-- +----+----------+----------------------------------+--------------------+ + + + +-- 4、创建订单表orders + +```MYSQL +create table orders( +id VARCHAR(100) PRIMARY key, +order_time datetime, +total_count int(11), +total_amount DOUBLE(11,2), +state int(11), +user_id int(11) +``` + +-- ```mysql +-- +--------------+--------------+------+-----+---------+-------+ +-- | Field | Type | Null | Key | Default | Extra | +-- +--------------+--------------+------+-----+---------+-------+ +-- | id | varchar(100) | NO | PRI | NULL | | +-- | order_time | datetime | NO | | NULL | | +-- | total_count | int(11) | NO | | NULL | | +-- | total_amount | double(11,2) | NO | | NULL | | +-- | state | int(11) | NO | | NULL | | +-- | user_id | int(11) | NO | MUL | NULL | | +-- +--------------+--------------+------+-----+---------+-------+ + +-- 尝试添加部分模拟数据,参考示例如下: + +```MYSQL +insert into orders values(15294258455691,'2018-06-20 00:30:45',2,50.20,0,1); +``` + +-- +----------------+---------------------+-------------+--------------+-------+---------+ +-- | id | order_time | total_count | total_amount | state | user_id | +-- +----------------+---------------------+-------------+--------------+-------+---------+ +-- | 15294258455691 | 2018-06-20 00:30:45 | 2 | 50.20 | 0 | 1 | +-- +----------------+---------------------+-------------+--------------+-------+---------+ + +-- 5、创建订单明细表order_items + +```MYSQL +create table order_items( +id int(11) PRIMARY KEY auto_increment, +count int(11), +amount DOUBLE(11,2), +title VARCHAR(100), +author varchar(100), +price double(11,2), +img_path VARCHAR(100), +order_id VARCHAR(100) +); +``` + +-- +----------+--------------+------+-----+---------+----------------+ +-- | Field | Type | Null | Key | Default | Extra | +-- +----------+--------------+------+-----+---------+----------------+ +-- | id | int(11) | NO | PRI | NULL | auto_increment | +-- | count | int(11) | NO | | NULL | | +-- | amount | double(11,2) | NO | | NULL | | +-- | title | varchar(100) | NO | | NULL | | +-- | author | varchar(100) | NO | | NULL | | +-- | price | double(11,2) | NO | | NULL | | +-- | img_path | varchar(100) | NO | | NULL | | +-- | order_id | varchar(100) | NO | MUL | NULL | | +-- +----------+--------------+------+-----+---------+----------------+ + + + +-- 尝试添加部分模拟数据,参考示例如下: + +```MYSQL +insert into order_items values +(1,1,27.20,'解忧杂货店','东野圭吾',27.20,'static/img/default.jpg','15294258455691'); +insert into order_items values +(2,1,23.00,'边城','沈从文',23.00,'static/img/default.jpg','15294258455691'); +-- ```mysql +``` + +-- +----+-------+--------+---------+---------+-------+----------------+----------------+ +-- | id |count| amount| title | author | price | img_path | order_id | +-- +----+-------+--------+------------+----------+-------+----------------+----------------+ +-- | 1 | 1 | 27.20| 解忧杂货店 | 东野圭吾 | 27.20 | static/img/default.jpg|15294258455691 | +-- | 2 | 1 | 23.00| 边城 | 沈从文 | 23.00 | static/img/default.jpg|15294258455691 | +-- +----+-------+--------+------------+----------+-------+------------+----------------+