目录
? ? ? ?本人会用几天时间把在学校学到的整个数据库知识全盘托出,如果能看懂并且明白我接下来所写的博文,相信对你数据库提升、对行业软件理解、以后工作有很大帮助。
由于SQL部分内容实在太多,我会把整个第二章分成四个小部分来细讲
目录
其二第四讲 ——SQL
2.4.1 插入数据
?INSERT语句的基本语法:
?插入数据
?【例2.84】试把数据“(’021B310001’,’张冬’,?? ’男’,?’1991-11-26’)”插入到Reader表中。
插入数据
【例2.85】Reader表中插入下面的数据:
添加数据
【例2.86】创建一个新表‘清华大学出版图书表’并将清华大学出版社出版的图书添加到此表中。?
2.4.2 修改数据?
?语法:
?UPDATE <表名>
?? SET <列名=值|表达式>[,…]
??? [WHERE <更新条件>]
?【例2.87】所有图书的价格打8折
?练习
?使用library数据库
??【例2.88】将王旭所借图书的日期更改为2020-5-1
?2.4.3 删除数据
?语法格式:
?DELETE FROM <表名> [WHERE <删除条件>]
删除数据?
?【例2.89】删除Book表中的全部数据
?【例2.90】删除价格大于100元的图书
?【例2.91】删除王旭的借阅纪录
?子查询方式实现
2.4.1 插入数据
?INSERT语句的基本语法:
?INSERT INTO 表名(列名列表)
??? VALUES(值列表)
?注意:列名列表 与 值列表 永远保持一致!
?插入数据
?【例2.84】试把数据“(’021B310001’,’张冬’,?? ’男’,?’1991-11-26’)”插入到Reader表中。
INSERT INTO Reader(reader_ID,name,sex,birthdate)
VALUES(’021B310001’,’张冬’,’男’,’1991- 11-26’)
????????要插入的数据如果恰好与表的列数以及各列的顺序保持一致,所以“列名列表”也可以省略掉,变成如下的形式:
INSERT INTO Reader
VALUES(‘021B310001’,’张冬’,’男’,’1991-11-26’)
插入数据
【例2.85】Reader表中插入下面的数据:
? 读者编号:’021B310002’
? 读者姓名:’牟晓光’
? 读者性别:’女’
INSERT INTO Reader(reader_ID,name,sex)
VALUES(‘021B310002’,’牟晓光’,’女’)
? 或者:
? ?INSERT INTO Reader
? ? ? ?VALUES(‘021B310002’,’牟晓光’,’女’,NULL)
添加数据
?前面的添加数据命令一次只能插入一条记录。如果想一次插入多条记录怎么办呢?
?可以将子查询的结果,以集合的方式向表中添加数据。
? 格式:INSERT?? INTO?? <表名>?? 子查询
【例2.86】创建一个新表‘清华大学出版图书表’并将清华大学出版社出版的图书添加到此表中。?
CREATE TABLE thbook(
book_ID CHAR(10) PRIMARY KEY,
name VARCHAR(30) ,
author VARCHAR(10),
publish VARCHAR(20),
price DECIMAL(6,2)
)
INSERT INTO thbook
SELECT * FROM Book WHERE publish=’清华大学出版社’
2.4.2 修改数据?
?语法:
?UPDATE <表名>
?? SET <列名=值|表达式>[,…]
??? [WHERE <更新条件>]
?【例2.87】所有图书的价格打8折
UPDATE Book SET price=price*0.8
?
?练习
?使用library数据库
–把王旭的出生日期改成1995-3-2
update reader set birthdate='1995-3-2'
where name='王旭‘
????????????????–修改reader表中为021B310005的读者的名字改为宋玮凌,性别改为男
update Reader set name='宋玮凌',sex='男'
where Reader_ID='021B310005'
??【例2.88】将王旭所借图书的日期更改为2020-5-1
??子查询方式
UPDATE Borrow SET Borrowdate= ‘2020-5-1’
WHERE reader_ID IN
(SELECT reader_ID FROM Reader
WHERE name= '王旭')
??更改‘胡晓丽’借阅‘高等数学’的借阅日期为‘2020-6-8’?
UPDATE Borrow SET Borrowdate= ‘2005-6-8’
WHERE reader_ID IN
(SELECT reader_ID FROM Reader
WHERE name= '胡晓丽')
and book_ID IN
(SELECT book_ID FROM book
WHERE name= '高等数学')
?2.4.3 删除数据
?语法格式:
?DELETE FROM <表名> [WHERE <删除条件>]
删除数据?
?【例2.89】删除Book表中的全部数据
DELETE FROM Book
?【例2.90】删除价格大于100元的图书
DELETE FROM Book WHERE price>100
?【例2.91】删除王旭的借阅纪录
?子查询方式实现
DELETE FROM Borrow WHERE Reader_id IN
(SELECT Reader_id FROM Reader WHERE name=’王旭’)
|