【SQL】9 SQL INSERT INTO 語句

HelloZEX發表於2018-07-25

INSERT INTO 語句用於向表中插入新記錄。


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,...);

 


演示資料庫

在本教程中,我們將使用 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" 表,資料如下所示:

 

lamp 您是否注意到,我們沒有向 id 欄位插入任何數字?
id 列是自動更新的,表中的每條記錄都有一個唯一的數字。

 


在指定的列插入資料

我們也可以在指定的列插入資料。

下面的 SQL 語句將插入一個新行,但是隻在 "name"、"url" 和 "country" 列插入資料(id 欄位會自動更新):

例項

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

執行以上 SQL,再讀取 "Websites" 表,資料如下所示:


沒有指定要插入資料的列名的形式需要把列出插入行的每一列資料

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