insert語句搭配select語句,可以從一個表中取出現成的記錄,來輸入到另一個表中,而且一次可以新增多筆記錄。
文法格式如下:
INTERET [INTO] table name[(column list)]
SELECT_statemnet
eg,
--1 create table category and composerCREATE TABLE [dbo].[category]([sn] [int] IDENTITY(1,1) NOT NULL,[category] [char](6) NULL,[name] [varchar](10) NULL)CREATE TABLE [dbo].[composer]([sn] [int] IDENTITY(1,1) NOT NULL,[name] [varchar](10) NULL)--2 insert record into category from composerINSERT category(category,name)SELECT "科幻",nameFROM composerWHERE sn < 4--3 query the category after updatedSELECT * FROM category
INSERT語句搭配EXEC語句來使用,與SELECT不同的是EXEC語句執行的是預存程序。
INTERET [INTO] table name[(column list)]
EXEC_statemnet
注意事項:EXEC語句傳回的執行結果須與column_list的欄位類型相對應(欄位類型定義相一致,比如name nvarchar(124),那麼我們只能在定義name欄位的時候大於124)。
--create table #helpdb(name nvarchar(124),dbsizenvarchar(13) null,owner varchar(24) null,dbidsmallint null,created datetime not null,status text,cmptleveltinyint)INSERT #helpdbexec sp_helpdbselect * from #helpdb