SQL INSERT 語句
在本教程中,你將學習如何使用 SQL 在資料庫表中插入記錄。
在表中插入資料
在前一章中,我們在 demo 資料庫中建立了一個名為 persons 的表。現在是時候在我們新建立的資料庫表中插入一些資料了。
INSERT INTO
語句用於在資料庫表中插入新行。
語法
將資料插入表的基本語法可以通過以下方式給出:
INSERT INTO table_name (column1,column2,...) VALUES (value1,value2,...);
這裡,column1,column2,…等表示表列的名稱,而 value1,value2,…等表示這些列的對應值。
讓我們在 persons 表中插入一些記錄。
第 1 步:檢視錶結構
在新增記錄之前,最好獲取有關表結構的資訊。在 MySQL 命令列上執行以下命令。它將顯示有關 persons 表中列的資訊,即列名,資料型別,約束等。
mysql> DESCRIBE persons;
你可以使用 DESCRIBE table_name;
檢視 MySQL 和 Oracle 資料庫中的任何表的列資訊或結構,而在 SQL Server 中用 EXEC sp_columns table_name;
(將 table_name 替換為實際的表名)。
第 2 步:向表中新增記錄
以下語句在 people 表中插入新行。
INSERT INTO persons (name, birth_date, phone)
VALUES ('Peter Wilson', '1990-07-15', '0711-020361');
你是否注意到,我們沒有為 id
欄位插入任何值 ? 因為,如果你記得建立表章節,那麼該 id
欄位標有 AUTO_INCREMENT
標誌,告訴 MySQL 如果沒有指定則自動為該欄位賦值。
注意: 字串和日期等非數字值必須始終用引號括起來,而數字值絕不能用引號括起來。
同樣,在 persons 表中插入另一行,如下所示:
INSERT INTO persons (name, birth_date, phone)
VALUES ('Carrie Simpson', '1995-05-01', '0251-031259');
以類似的方式在 person 表中再插入一行 :
INSERT INTO persons (name, birth_date, phone)
VALUES ('Victoria Ashworth', '1996-10-17', '0695-346721');
現在,如果你從 persons 表中選擇記錄,輸出現在將如下所示:
+----+--------------------+------------+-------------+
| id | name | birth_date | phone |
+----+--------------------+------------+-------------+
| 1 | Peter Wilson | 1990-07-15 | 0711-020361 |
| 2 | Carrie Simpson | 1995-05-01 | 0251-031259 |
| 3 | Victoria Ashworth | 1996-10-17 | 0695-346721 |
+----+--------------------+------------+-------------+
我們將在下一章中瞭解用於從表中選擇記錄的 SQL 語句。