成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL Server數據庫的臨時表的正確操作步驟

數據庫 SQL Server
我們今天主要向大家講述的是SQL Server數據庫的臨時表的正確使用方案,以及在實際操作中我們大家要用到的實際操作代碼的描述。

下面的文章主要介紹的是SQL Server數據庫的臨時表的正確使用方案,SQL Server數據庫的臨時表在實際操作中有很多的問題需要我們大家處理,那么究竟是如何對其進行處理的呢?以下的文章將會給你相應的解答方案。

刪除臨時表#Tmp

 

create table #Tmp 創建臨時表#Tmp

 

(

 

ID int IDENTITY (1,1) not null, 創建列ID,并且每次新增一條記錄就會加1

 

WokNo varchar(50),

 

pr

 

SQL Server數據庫臨時表的使用

 

刪除臨時表#Tmp

 

create table #Tmp 創建臨時表#Tmp

 

(

 

ID int IDENTITY (1,1) not null, 創建列ID,并且每次新增一條記錄就會加1

 

WokNo varchar(50),

 

primary key (ID) 定義ID為臨時表#Tmp的主鍵

 

);

 

Select * from #Tmp 查詢臨時表的數據

 

truncate table #Tmp 清空臨時表的所有數據和約束

 

相關例子:

Declare @Wokno Varchar(500) 用來記錄職工號

Declare @Str NVarchar(4000) 用來存放查詢語句

 

Declare @Count int 求出總記錄數

 

  1. Declare @i int  
  2. Set @i = 0   
  3. Select @CountCount = Count(Distinct(Wokno)) from #Tmp  
  4. While @i < @Count   
  5. Begin  
  6. Set @Str = 'Select top 1 @Wokno = WokNo from #Tmp Where id not in (Select top ' + Str(@i) + 'id from #Tmp)'  
  7. Exec Sp_ExecuteSql @Str,N'@WokNo Varchar(500) OutPut',@WokNo Output  
  8. Select @WokNo,@i  

一行一行把職工號顯示出來

  1. Set @i = @i + 1  
  2. End 

臨時表

 

可以創建本地和全局臨時表。本地臨時表僅在當前會話中可見;全局臨時表在所有會話中都可見。

 

本地臨時表的名稱前面有一個編號符 (#table_name),而全局臨時表的名稱前面有兩個編號符 (##table_name)。

SQL 語句使用 CREATE TABLE 語句中為 table_name 指定的名稱引用臨時表:

 

  1. CREATE TABLE #MyTempTable (cola INT PRIMARY KEY)  
  2. INSERT INTO #MyTempTable VALUES (1) 

如果本地臨時表由存儲過程創建或由多個用戶同時執行的應用程序創建,則 SQL Server數據庫必須能夠區分由不同用戶創建的表。為此,SQL Server 在內部為每個本地臨時表的表名追

加一個數字后綴。存儲在 tempdb 數據庫的 sysobjects 表中的臨時表,其全名由 CREATE TABLE 語句中指定的表名和系統生成的數字后綴組成。為了允許追加后綴,為本地臨時表指定的表名 table_name 不能超過 116 個字符。

 

除非使用 DROP TABLE 語句顯式除去臨時表,否則臨時表將在退出其作用域時由系統自動除去:

當存儲過程完成時,將自動除去在存儲過程中創建的本地臨時表。由創建表的存儲過程執行的所有嵌套存儲過程都可以引用此表。但調用創建此表的存儲過程的進程無法引用此表。所有其它本地臨時表在當前會話結束時自動除去。

 

全局臨時表在創建此表的會話結束且其它任務停止對其引用時自動除去。任務與表之間的關聯只在單個 Transact-SQL 語句的生存周期內保持。換言之,當創建全局臨時表的會話結束時,***一條引用此表的 Transact-SQL 語句完成后,將自動除去此表。

 

在存儲過程或觸發器中創建的本地臨時表與在調用存儲過程或觸發器之前創建的同名臨時表不同。如果查詢引用臨時表,而同時有兩個同名的臨時表,則不定義針對哪個表解析該查詢。嵌套存儲過程同樣可以創建與調用它的存儲過程所創建的臨時表同名的臨時表。嵌套存儲過程中對表名的所有引用都被解釋為是針對該嵌套過程所創建的表,例如:

 

 

  1. CREATE PROCEDURE Test2  
  2. AS  
  3. CREATE TABLE #t(x INT PRIMARY KEY)  
  4. INSERT INTO #t VALUES (2)  
  5. SELECT Test2Col = x FROM #t  
  6. GO  
  7. CREATE PROCEDURE Test1  
  8. AS  
  9. CREATE TABLE #t(x INT PRIMARY KEY)  
  10. INSERT INTO #t VALUES (1)  
  11. SELECT Test1Col = x FROM #t  
  12. EXEC Test2  
  13. GO  
  14. CREATE TABLE #t(x INT PRIMARY KEY)  
  15. INSERT INTO #t VALUES (99)  
  16. GO  
  17. EXEC Test1  
  18. GO 

下面是結果集:

 

  1. (1 row(s) affected)  
  2. Test1Col   
  3. 1   
  4. (1 row(s) affected)  
  5. Test2Col   
  6. 2   

 

當創建本地或全局臨時表時,CREATE TABLE 語法支持除 FOREIGN KEY 約束以外的其它所有約束定義。如果在臨時表中指定 FOREIGN KEY 約束,該語句將返回警告信息,指出此約

束已被忽略,表仍會創建,但不具有 FOREIGN KEY 約束。在 FOREIGN KEY 約束中不能引用臨時表。

 

考慮使用表變量而不使用SQL Server數據庫臨時表。當需要在臨時表上顯式地創建索引時,或多個存儲過程或函數需要使用表值時,臨時表很有用。通常,表變量提供更有效的查詢處理。

【編輯推薦】

  1. SQL Server內存占用的執行緩存的正確優化
  2. SQL Server所有表的列信息展示
  3. SQL Server 數據表信息的詳細描述
  4. SQL Server數據庫附加之后只讀或是失敗的破解
  5. SQL Server置疑的出現的原因,現象與破解

 

責任編輯:佚名 來源: 博客園
相關推薦

2010-09-02 16:28:03

SQL刪除

2010-07-08 16:08:39

配置SQL Serve

2010-09-08 16:03:57

SQL臨時表數據庫

2010-07-21 13:17:47

SQL Server表

2010-07-08 11:23:41

SQL Server還

2011-04-07 13:53:04

SQL Server數

2010-07-05 09:34:07

SQL Server元

2010-07-12 09:52:24

刪除 SQL Serv

2010-07-08 14:24:21

SQL Server

2010-07-09 12:30:14

Sql Server數

2010-07-12 15:49:53

MS SQL Serv

2010-07-15 13:54:47

2011-08-15 15:53:51

SQL Server數批量操作

2010-10-19 14:45:01

SQL SERVER臨

2010-06-28 09:28:32

SQL Server

2010-07-01 15:02:29

SQL Server數

2010-07-06 09:44:51

SQL Server數

2010-07-01 11:14:36

SQL Server

2010-07-01 11:03:04

SQL Server轉

2019-04-26 13:20:24

數據庫PostgreSQL Oracle
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产成人a亚洲精品 | 国产精品久久久久一区二区三区 | 精品乱人伦一区二区三区 | 久久久亚洲一区 | 亚洲一区精品在线 | 亚洲三级在线观看 | 午夜免费在线 | 日本午夜免费福利视频 | 色婷婷精品国产一区二区三区 | 精品久久国产 | 伊人久操 | 麻豆国产一区二区三区四区 | 久久久久亚洲精品中文字幕 | 亚洲免费在线观看 | 欧美日韩国产高清 | 成人免费在线 | 产真a观专区 | 精品国产一区二区三区免费 | 午夜欧美一区二区三区在线播放 | 日日操视频| 一级全黄少妇性色生活免费看 | 在线看片网站 | 日韩欧美精品在线 | 国产成人精品免费视频大全最热 | 亚洲精品91 | 亚洲精品在线视频 | 成人二区三区 | 久久男女视频 | 国产精品一区二区无线 | 91伊人网| 一区二区三区欧美在线观看 | 久久国内精品 | 成人性生交a做片 | 韩国av一区二区 | 九一在线观看 | 欧美精品一区二区在线观看 | 午夜性色a√在线视频观看9 | 性高朝久久久久久久3小时 av一区二区三区四区 | www.日韩高清 | 国产精品夜色一区二区三区 | 人人九九精 |