MySQL基礎之插入資料

2022-07-30 06:27:13 字數 2540 閱讀 8747

insert是用來插入(或新增)行到資料庫表的。插入可以用幾種方式使用:

把資料插入表中的最簡單的方法是使用基本的insert語法, 它要求指定表名和被插入到新行中的值。

mariadb [

crashcourse

]>

insert

into

customers

->

values(null

,

->

'pep e. lapew',

->

'100 main street',

->

'los angeles',

->'ca

',->

'90046',

->

'usa',

->

null

,

->

null);

如果你不想給出乙個值, 又不能省略此列的時候, 可以指定該列為null值

雖然這種方法很簡單, 但並不安全, 應該避免使用。上面的sql語句高度依賴於表中列的定義次序, 並且還依賴於其次序容易獲得的資訊。

insert

into 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 into之間新增關鍵字low_priority, 指示mysql降低insert語句的優先順序, 如下所示

insert low_priopity into

如果想要插入多行, 那麼可以使用多條insert語句, 甚至一次提交它們, 每條語句用乙個分號結束

insert

into 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。

insert

into 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...