笔记190 sqlserver 临时表 Vs 表变量 详细介绍 循环插入100条记录 SELECT TOP ( 100 )
1 --sqlserver 临时表 Vs 表变量 详细介绍 循环插入100条记录 SELECT TOP ( 100 )
2 --详细出处参考:http://www.jb51.net/article/28788.htm
3 USE tempdb
4 GO
5 SET nocount ON
6 EXEC sp_spaceused
7 /*插入数据之前*/
8 DECLARE @1 TABLE ( ID INT, Nr NVARCHAR(50) )
9 INSERT INTO @1
10 ( ID ,
11 Nr
12 )
13 SELECT TOP ( 100 )
14 row_number() OVER ( ORDER BY a.object_id ) ,
15 LEFT(a.name + b.name, 50)
16 FROM sys.all_objects AS a ,
17 sys.all_columns AS b
18 SELECT TOP ( 1 )
19 name ,
20 object_id ,
21 type ,
22 create_date
23 FROM sys.objects
24 WHERE type = 'U'
25 ORDER BY create_date DESC
26 EXEC sp_spaceused /*插入数据之后*/
27 GO
28 EXEC sp_spaceused /*Go之后*/
29 --说明SQL Server自动释放为使用的数据空间,但不会马上自动释放数据库分配的磁盘空间。
30 --我们在实际的环境中,发现临时数据库tempdb使用的磁盘空间越来越大,这是其中的原因之一