SQL必知必會 插入資料(十五)

2021-09-25 00:02:29 字數 2133 閱讀 7955

insert用來將行插入(或新增)到資料庫表。插入有幾種方式:

注意:1、使用insert語句可能需要客戶端/服務端dbms中的特定安全許可權。在你試圖使用insert前,應該保證自己有足夠的安全許可權

insert into customers

values(

'toy land'

,'123 any street'

,'new york'

,'ny'

,'11111'

,'usa'

,'null'

,'null'

);

注意:

1、在某些sql實現中,跟在insert之後的into關鍵字是可選的。但是,及時不一定需要,最好還是提供這個關鍵字,這樣需做將保證sql**在dbms之間可移植

2、上面的sql語句高度依賴於表中列的定義,還依賴於其容易獲得次序的資訊。即使可以得到這種次序資訊,也不能保證各列在下一次表結構變動後保持完全相同的次序。因此,編寫依賴於特定次序的sql語句是很不安全的,這樣遲早會出問題

insert into customers

(cust_id,

cust_name,

cust_address,

cust_city,

cust_state,

cust_zip,

cust_country,

cust_contact,

cust_email

)values(

'toy land',

'123 any street',

'new york',

'ny',

'11111',

'usa',

'null',

'null',

)--在插入行時,dbms將用values列表中的相應值貼入列表中的對應項。values中的第乙個值對應第乙個指定列名,

第二個值對應於第二個列名,如此等等。

注意:

1、因為提供了列名,values必須以其指定的次序匹配指定的列名,不一定按各列出現在表中的實際次序。其優點是,即使表的結構改變,這條insert語句任然能正確工作。

insert into customers

(cust_id,

cust_name,

cust_address,

cust_city,

cust_state,

cust_zip,

cust_country,

)values(

'toy land',

'123 any street',

'new york',

'ny',

'11111',

'usa',

)

注意:

省略的列必須滿足一下某些條件

1、該列定義為允許null值(無值或空值)

2、在表定義中給出預設值。這表示如果不給出值,將使用預設值

insert into customers

(cust_name,

cust_address,

cust_city,

cust_state,

cust_zip,

cust_country

)select

cust_name,

cust_address,

cust_city,

cust_state,

cust_zip,

cust_country

from custnew;

注意:

1、為了簡單起見,這個例子在insert和select語句中使用了相同的列名。但是,不一定要求列名匹配。事實上,dbms一點也不關心select返回的列名。他使用的列的位置。

select *

into custcopy

from customers;

--這條select語句建立乙個名為custcopy的新錶,並把customers表的整個內容複製到新錶中。

因為這裡使用的時select *,所以將在custcopy表中建立(並填充)於customers表的每一列相同的列。

注意:

SQL必知必會筆記十五(插入資料)

利用sql的insert語句將資料插入表中。insert用來將行插入 或新增 到資料庫表。插入有幾種方式 插入完整的行 插入行的一部分 插入某些查詢的結果。使用insert語句可能需要客戶端 伺服器dbms中的特定安全許可權。在你試圖使用insert前,應該保證自己有足夠的安全許可權。插入完整的行 ...

SQL 必知必會第十五課 插入資料

插入完整的行 insert into customers values 1000000006 toy land 123 any street new york ny 11111 usa null null 繁瑣卻更加保險的方法 insert into customers cust id,cust n...

SQL必知必會

資料庫 儲存有組織的資料的容器。資料庫管理系統 dbms 資料庫軟體,資料庫是通過dbms建立和操縱的容器。表 某種特定資料型別的結構化清單。資料庫中的每個表都有自己的名字,且唯一。不同的資料庫可以使用相同的表名。表的特性 模式 資料在表中如何儲存,儲存什麼樣的資料,資料如何分解。模式可以用來描述資...