SQL零基础入门学习(四)
创始人
2024-05-26 11:27:09
0

SQL零基础入门学习(三)

SQL INSERT INTO 语句

INSERT INTO 语句用于向表中插入新记录。

SQL INSERT INTO 语法

INSERT INTO 语句可以有两种编写形式。

第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:

INSERT INTO table_name
VALUES (value1,value2,value3,...);

第二种形式需要指定列名及被插入的值:

INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);

参数说明:
table_name:需要插入新记录的表名。
column1, column2, …:需要插入的字段名。
value1, value2, …:需要插入的字段值。

演示数据库

在本教程中,我们将使用 RUNOOB 样本数据库。

下面是选自 “Websites” 表的数据:

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
| 3  | 菜鸟教程      | http://www.runoob.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
+----+--------------+---------------------------+-------+---------+

INSERT INTO 实例

假设我们要向 “Websites” 表中插入一个新行。

我们可以使用下面的 SQL 语句:

INSERT INTO Websites (name, url, alexa, country)
VALUES ('百度','https://www.baidu.com/','4','CN');

执行以上 SQL,再读取 “Websites” 表,数据如下所示:
在这里插入图片描述
您是否注意到,我们没有向 id 字段插入任何数字?
id 列是自动更新的,表中的每条记录都有一个唯一的数字。

在指定的列插入数据

我们也可以在指定的列插入数据。

下面的 SQL 语句将插入一个新行,但是只在 “name”、“url” 和 “country” 列插入数据(id 字段会自动更新):

INSERT INTO Websites (name, url, country)
VALUES ('stackoverflow', 'http://stackoverflow.com/', 'IND');

执行以上 SQL,再读取 “Websites” 表,数据如下所示:
在这里插入图片描述

SQL UPDATE 语句

UPDATE 语句用于更新表中已存在的记录。

SQL UPDATE 语法

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;

参数说明:
table_name:要修改的表名称。
column1, column2, …:要修改的字段名称,可以为多个字段。
value1, value2, …:要修改的值,可以为多个值。
condition:修改条件,用于指定哪些数据要修改。

lamp 请注意 SQL UPDATE 语句中的 WHERE 子句!
WHERE 子句规定哪条记录或者哪些记录需要更新。如果您省略了 WHERE 子句,所有的记录都将被更新!

演示数据库

在本教程中,我们将使用 RUNOOB 样本数据库。

下面是选自 “Websites” 表的数据:

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
| 3  | 菜鸟教程      | http://www.runoob.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
+----+--------------+---------------------------+-------+---------+

SQL UPDATE 实例

假设我们要把 “菜鸟教程” 的 alexa 排名更新为 5000,country 改为 USA。

我们使用下面的 SQL 语句:

UPDATE Websites 
SET alexa='5000', country='USA' 
WHERE name='菜鸟教程';

执行以上 SQL,再读取 “Websites” 表,数据如下所示:
在这里插入图片描述

Update 警告!

在更新记录时要格外小心!在上面的实例中,如果我们省略了 WHERE 子句,如下所示:

UPDATE Websites
SET alexa='5000', country='USA'

执行以上代码会将 Websites 表中所有数据的 alexa 改为 5000,country 改为 USA。

执行没有 WHERE 子句的 UPDATE 要慎重,再慎重。

SQL DELETE 语句

DELETE 语句用于删除表中的记录。

SQL DELETE 语法

DELETE FROM table_name
WHERE condition;

参数说明:
table_name:要删除的表名称。
condition:删除条件,用于指定哪些数据要删除。

请注意 SQL DELETE 语句中的 WHERE 子句!
WHERE 子句规定哪条记录或者哪些记录需要删除。如果您省略了 WHERE 子句,所有的记录都将被删除!

演示数据库

在本教程中,我们将使用 RUNOOB 样本数据库。

下面是选自 “Websites” 表的数据:

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘宝       | https://www.taobao.com/   | 13    | CN      |
| 3  | 菜鸟教程 | http://www.runoob.com/    | 4689  | CN      |
| 4  | 微博       | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
+----+--------------+---------------------------+-------+---------+

SQL DELETE 实例

假设我们要从 “Websites” 表中删除网站名为 “Facebook” 且国家为 USA 的网站。

我们使用下面的 SQL 语句:

DELETE FROM Websites
WHERE name='Facebook' AND country='USA';

执行以上 SQL,再读取 “Websites” 表,数据如下所示:
在这里插入图片描述

删除所有数据

您可以在不删除表的情况下,删除表中所有的行。这意味着表结构、属性、索引将保持不变:

DELETE FROM table_name;

注释:在删除记录时要格外小心!因为您不能重来!

相关内容

热门资讯

推出“全民电竞基金”,国际电子... 转自:北京日报客户端7月2日至5日,以“建设数字友好城市”为主题的2025全球数字经济大会在国家会议...
太力科技跌1.72%,成交额6... 7月4日,太力科技跌1.72%,成交额6241.07万元,换手率7.11%,总市值40.85亿元。异...
欧洲理事会前主席范龙佩呼吁各方... 7月2日至4日,第十三届世界和平论坛在北京举行。3日,欧洲理事会前主席、比利时前首相赫尔曼·范龙佩(...
投资者提问:公司24年年报和2... 投资者提问:公司24年年报和25年一季度报,业绩都在下滑,请问目前公司销售情况如何?公司是否可以每月...
永利股份:两业务板块未来拓展规... 投资者提问:请问公司未来有什么规划?董秘回答(永利股份SZ300230):您好,公司分轻型输送带和高...
求问乖离性百万亚瑟王和扩散性百... 求问乖离性百万亚瑟王和扩散性百万亚瑟王的区别MA的全称就叫 《扩散性百万亚瑟王》 。 不管是百万亚瑟...
水晶光电:投资者多方面提问,董... 投资者提问:1、公司对2025年二季度和三季度的业绩预期,特别是新业务领域的增长潜力。2、与小米眼镜...
速达股份涨0.59%,成交额3... 7月4日,速达股份涨0.59%,成交额3374.70万元,换手率4.02%,总市值33.61亿元。异...
三星医疗:子公司奥克斯智能科技... 每经AI快讯,7月4日,三星医疗(601567.SH)公告称,公司下属全资子公司奥克斯智能科技于近日...
AI热潮涌动!英伟达股价再创历... 【环球网财经综合报道】华尔街对人工智能(AI)浪潮的乐观情绪持续高涨。美东时间7月3日,英伟达股价盘...