Sql Server中表復制的語句
下面為您介紹在Sql Server數據庫中,整表插入另一個表部分列的詳細語句寫法,供您參考,如果您對Sql Server中的語句感興趣的話,不妨一看,相信對您學習Sql Server數據庫會有幫助。
語法是這樣的 :
1、說明:復制表(只復制結構,源表名:a 新表名:b) (Access可用)
法一:select * into b from a where 1 <>1
法二:select top 0 * into b from a
2、說明:拷貝表(拷貝數據,源表名:a 目標表名:b) (Access可用)
insert into b(a, b, c) select d,e,f from a;
3、CREATE TABLE #MyTempTable (cola INT PRIMARY KEY)
INSERT INTO #MyTempTable VALUES (1)
4、select * into #tmpTb from table
對臨時表釋放的說明:
臨時表
可以創(chuàng)建本地和全局臨時表。本地臨時表僅在當前會話中可見;全局臨時表在所有會話中都可見。
本地臨時表的名稱前面有一個編號符 (#table_name),而全局臨時表的名稱前面有兩個編號符 (##table_name)。
SQL 語句使用 CREATE TABLE 語句中為 table_name 指定的名稱引用臨時表:
CREATE TABLE #MyTempTable (cola INT PRIMARY KEY)
INSERT INTO #MyTempTable VALUES (1)
如果本地臨時表由存儲過程創(chuàng)建或由多個用戶同時執(zhí)行的應用程序創(chuàng)建,則 SQL Server 必須能夠區(qū)分由不同用戶創(chuàng)建的表。為此,SQL Server 在內部為每個本地臨時表的表名追加一個數字后綴。存儲在 tempdb 數據庫的 sysobjects 表中的臨時表,其全名由 CREATE TABLE 語句中指定的表名和系統(tǒng)生成的數字后綴組成。為了允許追加后綴,為本地臨時表指定的表名 table_name 不能超過 116 個字符。
除非使用 DROP TABLE 語句顯式除去臨時表,否則臨時表將在退出其作用域時由系統(tǒng)自動除去:
當存儲過程完成時,將自動除去在存儲過程中創(chuàng)建的本地臨時表。由創(chuàng)建表的存儲過程執(zhí)行的所有嵌套存儲過程都可以引用此表。但調用創(chuàng)建此表的存儲過程的進程無法引用此表。
所有其它本地臨時表在當前會話結束時自動除去。
全局臨時表在創(chuàng)建此表的會話結束且其它任務停止對其引用時自動除去。任務與表之間的關聯(lián)只在單個 Transact-SQL 語句的生存周期內保持。換言之,當創(chuàng)建全局臨時表的會話結束時,***一條引用此表的 Transact-SQL 語句完成后,將自動除去此表。
【編輯推薦】
SQL Server2005中跨庫執(zhí)行SQL語句的方法
SQL Server中存儲過程慢于SQL語句直接執(zhí)行的原因