在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

如何进行Sqlserver数据写入表的测试

125次阅读
没有评论

共计 4520 个字符,预计需要花费 12 分钟才能阅读完成。

如何进行 Sqlserver 数据写入表的测试,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面丸趣 TV 小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

1、创建表:
BEGIN TRANSACTION
SET QUOTED_IDENTIFIER ON
SET ARITHABORT ON
SET NUMERIC_ROUNDABORT OFF
SET CONCAT_NULL_YIELDS_NULL ON
SET ANSI_NULLS ON
SET ANSI_PADDING ON
SET ANSI_WARNINGS ON
COMMIT
BEGIN TRANSACTION
GO
CREATE TABLE dbo.Table_3
(
id int NOT NULL,
company_id nvarchar(MAX) NULL,
number nvarchar(MAX) NULL,
code nvarchar(MAX) NULL,
input_tele bigint NULL,
type nvarchar(MAX) NULL
)  ON [PRIMARY]
TEXTIMAGE_ON [PRIMARY]
GO
ALTER TABLE dbo.Table_3 SET (LOCK_ESCALATION = TABLE)
GO
COMMIT

2、测试表插入
对表插入 200000 条记录:
set nocount on
declare @i int
set @i = 0
while @i 200000
begin
insert into Table_3 values (@i, abcd , 123 , 234 , 345 , 567)
set @i = @i +1
end
go

耗时 3 分 11 秒。

dbcc showcontig(Table_3)
go
DBCC SHOWCONTIG 正在扫描 Table_3 表 …
表: Table_3 (370100359);索引 ID: 0,数据库 ID: 5
已执行 TABLE 级别的扫描。
– 扫描页数 …………………………..: 1482
– 扫描区数 …………………………: 188
– 区切换次数 …………………………: 187
– 每个区的平均页数 ……………………: 7.9
– 扫描密度 [最佳计数: 实际计数]…….: 98.94% [186:188]
– 区扫描碎片 ………………: 1.60%
– 每页的平均可用字节数 …………………: 403.7
– 平均页密度(满)…………………: 95.01%
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

未加索引表大?。?/p>

加索引后表大?。?br />dbcc showcontig(Table_3)
go

DBCC SHOWCONTIG 正在扫描 Table_3 表 …
表: Table_3 (386100416);索引 ID: 1,数据库 ID: 5
已执行 TABLE 级别的扫描。
– 扫描页数 …………………………..: 1087
– 扫描区数 …………………………: 136
– 区切换次数 …………………………: 135
– 每个区的平均页数 ……………………: 8.0
– 扫描密度 [最佳计数: 实际计数]…….: 100.00% [136:136]
– 逻辑扫描碎片 ………………: 0.00%
– 区扫描碎片 ………………: 3.68%
– 每页的平均可用字节数 …………………: 0.3
– 平均页密度(满)…………………: 100.00%
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

清空表数据。
修改表结构:
BEGIN TRANSACTION
SET QUOTED_IDENTIFIER ON
SET ARITHABORT ON
SET NUMERIC_ROUNDABORT OFF
SET CONCAT_NULL_YIELDS_NULL ON
SET ANSI_NULLS ON
SET ANSI_PADDING ON
SET ANSI_WARNINGS ON
COMMIT
BEGIN TRANSACTION
GO
CREATE TABLE dbo.Tmp_Table_3
(
id int NOT NULL,
company_id varchar(50) NULL,
number varchar(50) NULL,
code varchar(50) NULL,
input_tele bigint NULL,
type varchar(50) NULL
)  ON [PRIMARY]
GO
ALTER TABLE dbo.Tmp_Table_3 SET (LOCK_ESCALATION = TABLE)
GO
IF EXISTS(SELECT * FROM dbo.Table_3)
EXEC(INSERT INTO dbo.Tmp_Table_3 (id, company_id, number, code, input_tele, type)
SELECT id, CONVERT(varchar(50), company_id), CONVERT(varchar(50), number), CONVERT(varchar(50), code), input_tele, CONVERT(varchar(50), type) FROM dbo.Table_3 WITH (HOLDLOCK TABLOCKX) )
GO
DROP TABLE dbo.Table_3
GO
EXECUTE sp_rename N dbo.Tmp_Table_3 , N Table_3 , OBJECT  
GO
COMMIT

对表插入 200000 条记录:
set nocount on
declare @i int
set @i = 0
while @i 200000
begin
insert into Table_3 values (@i, abcd , 123 , 234 , 345 , 567)
set @i = @i +1
end
go

耗时 3 分 07 秒。

dbcc showcontig(Table_3)
go

DBCC SHOWCONTIG 正在扫描 Table_3 表 …
表: Table_3 (386100416);索引 ID: 0,数据库 ID: 5
已执行 TABLE 级别的扫描。
– 扫描页数 …………………………..: 1143
– 扫描区数 …………………………: 145
– 区切换次数 …………………………: 144
– 每个区的平均页数 ……………………: 7.9
– 扫描密度 [最佳计数: 实际计数]…….: 98.62% [143:145]
– 区扫描碎片 ………………: 2.07%
– 每页的平均可用字节数 …………………: 397.0
– 平均页密度(满)…………………: 95.10%
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

truncate table Table_3 后:
dbcc showcontig(Table_3)
go

DBCC SHOWCONTIG 正在扫描 Table_3 表 …
表: Table_3 (386100416);索引 ID: 0,数据库 ID: 5
已执行 TABLE 级别的扫描。
– 扫描页数 …………………………..: 0
– 扫描区数 …………………………: 0
– 区切换次数 …………………………: 0
– 每个区的平均页数 ……………………: 0.0
– 扫描密度 [最佳计数: 实际计数]…….: 100.00% [0:0]
– 区扫描碎片 ………………: 0.00%
– 每页的平均可用字节数 …………………: 0.0
– 平均页密度(满)…………………: 0.00%
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

对表加索引:
对 id 字段加主键聚集索引:
BEGIN TRANSACTION
SET QUOTED_IDENTIFIER ON
SET ARITHABORT ON
SET NUMERIC_ROUNDABORT OFF
SET CONCAT_NULL_YIELDS_NULL ON
SET ANSI_NULLS ON
SET ANSI_PADDING ON
SET ANSI_WARNINGS ON
COMMIT
BEGIN TRANSACTION
GO
ALTER TABLE dbo.Table_3 ADD CONSTRAINT
PK_Table_3 PRIMARY KEY CLUSTERED 
(
id
) WITH(STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO
ALTER TABLE dbo.Table_3 SET (LOCK_ESCALATION = TABLE)
GO
COMMIT

对表插入 200000 条记录:
set nocount on
declare @i int
set @i = 0
while @i 200000
begin
insert into Table_3 values (@i, abcd , 123 , 234 , 345 , 567)
set @i = @i +1
end
go

dbcc showcontig(Table_3)
go

DBCC SHOWCONTIG 正在扫描 Table_3 表 …
表: Table_3 (386100416);索引 ID: 1,数据库 ID: 5
已执行 TABLE 级别的扫描。
– 扫描页数 …………………………..: 1087
– 扫描区数 …………………………: 139
– 区切换次数 …………………………: 138
– 每个区的平均页数 ……………………: 7.8
– 扫描密度 [最佳计数: 实际计数]…….: 97.84% [136:139]
– 逻辑扫描碎片 ………………: 0.55%
– 区扫描碎片 ………………: 2.16%
– 每页的平均可用字节数 …………………: 0.3
– 平均页密度(满)…………………: 100.00%
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

先加索引后插入数据后表大小:

对于 20W 的数据量:
建好表,插入数据,再加索引。
建好表,建好索引,再插入数据。
感觉时间花费上差不多,空间消耗上也差不多。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注丸趣 TV 行业资讯频道,感谢您对丸趣 TV 的支持。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-19发表,共计4520字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 成人毛片高清视频观看 | 蜜桃臀在线成人亚洲 | 10000福利视频在线观看 | 成人福利视频在线看高清观看 | 成人免费淫片在线费观看 | 午夜视频福利在线观看 | 欧美网站免费观看在线 | 亚洲男人天 | 国模吧双双大尺度炮交gogo | 欧美一级做一级做片性十三 | 国产一级毛片午夜福 | 亚洲精品无码国模 | 欧美成人天天综合在线 | 日色网| 99re热这里只有精品视频 | 国产日韩欧美在线一二三四 | 小12萝裸体自慰出白浆 | 77777亚洲午夜久久多人 | 欧美曰韩一区二区三区 | 任你敢不一样精品的视频 | 久久久午夜精品福利内容 | 国产日韩在线看 | 韩国精品欧美一区二区三区 | 亚洲精品三区 | 日本大肚子孕妇交xxx | 任你敢不一样精品的视频 | 亚洲精品无码av人在线观看国产 | 国产欧美一区二区三区观看 | 射精专区一区二区朝鲜 | 成年人免费观看网站 | 大陆极品少妇内射aaaaa | 国产精品 第1页 | 日韩在线视频网 | 加勒比久草 | 国产综合视频 | 人妻巨大乳hd免费看 | 日韩美女一区二区三区 | 5x性区m免费毛片视频看看 | 午夜小视频免费观看 | 欧美日韩在线观看视频 | 亚洲香蕉|