1插入完整的行
insert into customers
values (null,
'pep e. lapew',
'100 main street',
'los angeles',
'ca',
'90046',
'usa'
null,
null);
各個列必須以它們在表**現的次序填充。如果某個列沒有值(如上例最後兩列),應該使用null值。第一列為null是因為它是主鍵,由mysql自動增量。
這種語法簡單但不安全,因為高度依賴表中列的定義次序。
更安全的方法:
insert into customers(cust_name,
cust_city,
cust_state,
cust_zip,
cust_country,
cust_contact,
cust_email,
cust_address)
values ( 'pep e. lapew',
'los angeles',
'ca',
'90046',
'usa'
null,
null,
'100 main street');
values必須以指定的次序匹配指定的列名,不一定按各個列在實際表中的次序。優點是,即使表的結構改變,詞insert語句仍然可以正常工作。cust_id不需要出現在列表中(自動增量)。
省略列的條件
2插入多個行
insert into customers(cust_name,
cust_city,
cust_state,
cust_zip,
cust_country,
cust_address)
values (一堆與上述列
對應值),
values (另一堆與上述列
對應值);
3插入檢索出的資料
使用場景:假如你想從另一表(custnew)中合併客戶列表到你的customers表。
insert into customers(cust_id
cust_name,
cust_city,
cust_state,
cust_zip,
cust_country,
cust_address)
select cust_id
cust_name,
cust_city,
cust_state,
cust_zip,
cust_country,
cust_address
from custnew;
注意:必須保證cust_id值不重複(建立新錶時避開customers中已使用過的cust_id或省略這列在匯入時自動產生新值)
mysql不關心select返回的列名,它匹配的是列的位置。對於只用不同列名的表匯入資料時是非常有用的。
20更新和刪除資料
1更新更新客戶的cust_name和cust_email列:
update customers
set cust_name='the fudds',
cust_email='[email protected]'
where cust_id = 10005;
不要省略where,否則可能會更新表中所有行。
2刪除刪除客戶10006:
delete from customers
where cust_id = 10006;
如果沒有where,將刪除表中每個客戶。
delete語句從表中刪除所有行後,不刪除表本身。如果想刪除所有行,可使用truncate table語句。
mysql沒有撤銷,在對update和delete語句使用where之前,先用select語句進行測試確保是要更新或刪除的記錄,防止where子句不正確。
---------------------
原文:
c 更新mysql資料 MySQL插入更新刪除資料
資料插入 插入完整的行 insert into customers values null,pep e.lapew 100 main street los angeles ca 90046 usa null null 此例子插入乙個新客戶到customers表。儲存到每個表列中的資料在values子...
Hibernate 資料的批量插入 更新和刪除
hibernate完全以物件導向的方式來運算元據庫,當程式裡以物件導向的方式操作持久化物件時,將被自動轉換為對資料庫的操作。例如呼叫session的delete 方法來刪除持久化物件,hibernate將負責刪除對應的資料記錄 當執行持久化物件的set方法時,hibernate將自動轉換為對應的up...
MySQL學習之插入 刪除 更新資料
一 插入資料 插入資料的方式 插入完整的記錄 插入記錄的一部分 插入多條記錄 插入另乙個查詢記錄 1 為表的所有字段插入記錄 insert int table name column list values value lists 1 指定所有欄位名 列名順序可以不是表所定義的順序,及插入資料時不需...