insert是用來插入(或新增)行到資料庫表的。插入可以用幾種方式使用:
把資料插入表中的最簡單的方法是使用基本的insert語法, 它要求指定表名和被插入到新行中的值。
mariadb [crashcourse
]>
insert
into
customers
->
values(null
,
->
'pep e. lapew',
->
'100 main street',
->
'los angeles',
->'ca
',->
'90046',
->
'usa',
->
null
,
->
null);
如果你不想給出乙個值, 又不能省略此列的時候, 可以指定該列為null值
雖然這種方法很簡單, 但並不安全, 應該避免使用。上面的sql語句高度依賴於表中列的定義次序, 並且還依賴於其次序容易獲得的資訊。
insertinto customers(cust_address, cust_city, cust_state, cust_zip, cust_country, cust_contact, cust_email) values('
pep e. lapew
', '
100 main street
', '
los angeles
', '
ca', '
90046
', '
usa', null, null);
使用這種語法, 還可以省略列。這表示可以只給某些列提供值。給其他列不提供值。
insert into操作可能很耗時(特別是有很多索引需要更新的時候), 而且它可能降低等待處理的select語句的效能。如果想要插入多行, 那麼可以使用多條insert語句, 甚至一次提交它們, 每條語句用乙個分號結束如果資料檢索是最重要的, 可以通過在insert into之間新增關鍵字low_priority, 指示mysql降低insert語句的優先順序, 如下所示
insert low_priopity into
insertinto customers(cust_address, cust_city, cust_state, cust_zip, cust_country, cust_contact, cust_email) values('
pep e. lapew
', '
100 main street
', '
los angeles
', '
ca', '
90046
', '
usa', null, null);insert
into customers(cust_address, cust_city, cust_state, cust_zip, cust_country) values('
m. martian
', '
42 galaxy way
', '
new york
', '
ny', '
11213
', '
usa');
或者, 只要每天insert語句中的列名(和次序)相同, 可以如下組合個語句
insert into customers(cust_address, cust_city, cust_state, cust_zip, cust_country) values('pep e. lapew', '100 main street', 'los angeles', 'ca', '90046', 'usa'),
'm. martian', '42 galaxy way', 'new york', 'ny', '11213', 'usa'
此技術可以提高資料庫處理的效能, 因為mysql用單條insert語句處理多個插入比使用多條insert語句快insert可以將一條select語句的結果插入表中。這就是所謂的insert select。
insertinto customers(cust_id, cust_contact, cust_email, cust_name, cust_address, cust_city, cust_state, cust_zip, cust_country)select cust_id, cust_contact, cust_email, cust_name, cust_address, cust_city, cust_state, cust_zip, cust_country from custnew;
insert select語句中select語句可包含where子句以過濾插入的資料
MySQL之插入資料
1 為所有字段插入資料 語法 insert into 表名 欄位名1 欄位名2 欄位名3,values value 值1 值2,值3.注意 表後面可以加欄位名也可以不加欄位名,如果沒有新增欄位名則插入的值順序要與表結構字段順序相同 2.為指定字段插入資料 語法 insert into 表名 欄位名1...
My SQL 插入資料
在這裡我們有乙個新建的表如下 我們使用insert可以插入單行 多行和插入查詢的結果。插入單行的兩種方法 1.使用建立表時預設的順序 這裡我們插入一行,需要嚴格按照建立表的順序來定義每個列的值。使用這種方式,對錶的每乙個列都必須給出值,對於auto increment的行,可以給出null值,該列將...
MySQL插入資料
mysql通過insert來插入行到資料庫表中,通常有以下幾種情況 1.插入完整的行 2.插入行的一部分 3.插入多行 4.插入某些查詢的資料。一 插入完整的行 下面為插入一行資料到表customers中的例子 use crashcourse insert into customers cust n...