-
1 # 性感的小麵包
-
2 # 老八追隨者
1、插入資料
向表中插入一條資料的 SQL 語法如下:
INSERT INTO [TABLE_NAME] (column1, column2, column3,...columnN) VALUES (value1, value2, value3,...valueN);
那好,我們具體來看一個例子吧。
先建立這麼一張 person 表,使用如下 SQL:
create table person( id int primary key, name varchar(16) not null, age int, phone varchar(11), address varchar(256) );
接著,我們插入一條資料:
insert into person(id,name,age,phone,address) values (1,"yang",22,"123232323","中國上海");
於是你查詢 person 表,會看到
+----+------+------+-----------+--------------+ | id | name | age | phone | address | +----+------+------+-----------+--------------+ | 1 | yang | 22 | 123232323 | 中國上海 | +----+------+------+-----------+--------------+
當然,如果你在插入資料時有些欄位的值暫時不想傳入,或是該欄位有預設值,insert 語句是允許你部分資料插入的,前提是不能違反一些非空、唯一、型別不匹配約束。
例如我只想插入一條資料,而我只知道這個人的名字,於是我也可以插入一條記錄,但只賦值 name 欄位。
insert into person(id,name) values (2,"cao");
再次查詢 person 表:
+----+------+------+-----------+--------------+ | id | name | age | phone | address | +----+------+------+-----------+--------------+ | 1 | yang | 22 | 123232323 | 中國上海 | | 2 | cao | NULL | NULL | NULL | +----+------+------+-----------+--------------+
關係型資料庫中,所有未賦值的欄位都預設為 NULL,當然這個預設值是可以修改的,你可以修改為空字串或空格等等。
再說一個細節,當你想要插入一條資料時,並且希望為該表的每一個欄位都賦值,那麼你可以不用在表名後列舉所有欄位名,例如以下兩條 insert 語句是等效的。
insert into person(id,name,age,phone,address) values (1,"yang",22,"123232323","中國上海");
insert into person values (1,"yang",22,"123232323","中國上海");
關於 insert,我們暫時先說到這,後面介紹子查詢的時候還會提到它,接著我們來看修改資料 update。
2、修改資料
SQL UPDATE 語句用於修改表中現有的記錄。基本格式如下:
UPDATE [table_name] SET column1 = value1, column2 = value2...., columnN = valueN
舉個例子,這是 person 表現在的資料情況:
+----+------+------+-----------+--------------+ | id | name | age | phone | address | +----+------+------+-----------+--------------+ | 1 | yang | 22 | 123232323 | 中國上海 | | 2 | cao | NULL | NULL | NULL | +----+------+------+-----------+--------------+
我們執行:
update person set address="浙江杭州";
再來看 person 表:
+----+------+------+-----------+--------------+ | id | name | age | phone | address | +----+------+------+-----------+--------------+ | 1 | yang | 22 | 123232323 | 浙江杭州 | | 2 | cao | NULL | NULL | 浙江杭州 | +----+------+------+-----------+--------------+
你會發現 person 表的所有記錄的 address 欄位全都修改為「浙江杭州」。
所以,一般來說,我們的 update 語句都會結合 where 子句做一個數據篩選,只修改符合條件的記錄的 address 欄位值。
例如:
update person set address="浙江杭州" where id = 1;
DELETE FROM [table_name] WHERE [condition];
delete from person where id = 1;
回覆列表
SQL 能做什麼?SQL 面向資料庫執行查詢SQL 可從資料庫取回資料SQL 可在資料庫中插入新的記錄SQL 可更新資料庫中的資料SQL 可從資料庫刪除記錄SQL 可建立新資料庫SQL 可在資料庫中建立新表SQL 可在資料庫中建立儲存過程SQL 可在資料庫中建立檢視SQL 可以設定表、儲存過程和檢視的許可權
SQL SELECT 語句SELECT 語句用於從表中選取資料。結果被儲存在一個結果表中(稱為結果集)。
SQL SELECT DISTINCT 語句在表中,可能會包含重複值。這並不成問題,不過,有時您也許希望僅僅列出不同(distinct)的值。關鍵詞 DISTINCT 用於返回唯一不同的值。
INSERT INTO 語句INSERT INTO 語句用於向表格中插入新的行。
Update 語句Update 語句用於修改表中的資料。
WHERE 子句如需有條件地從表中選取資料,可將 WHERE 子句新增到 SELECT 語句。
AND 和 OR 運算子AND 和 OR 可在 WHERE 子語句中把兩個或多個條件結合起來。如果第一個條件和第二個條件都成立,則 AND 運算子顯示一條記錄。如果第一個條件和第二個條件中只要有一個成立,則 OR 運算子顯示一條記錄。
ORDER BY 語句ORDER BY 語句用於根據指定的列對結果集進行排序。ORDER BY 語句預設按照升序對記錄進行排序。如果您希望按照降序對記錄進行排序,可以使用 DESC 關鍵字。