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

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

许多新手不太清楚如何测试如何将Sqlserver数据写入表中。为了帮助大家解决这个问题,下面小编就详细讲解一下。需要的人可以从中学习,希望你能有所收获。

1.创建表格:

开始交易

将带引号的标识符设置为开

开启算术端口

将数值_舍入中止设置为关闭

设置串联空产量空开

将ANSI_NULLS设置为开

将ANSI_PADDING设置为开

设置ANSI _警告开启

犯罪

开始交易

创建表dbo。表3

不为空,

公司id nvarchar(MAX)空,

数值最大值为空,

代码nvarchar(MAX)空,

input_tele bigint NULL,

类型nvarchar(最大值)空

)开[主要]

文本图像开启[主要]

ALTER TABLE dbo。表3设置(锁定升级=表)

犯罪

2.测试表插入

在表中插入200000条记录:

设置nocount on

声明@i int

设置@i=0

而@i 200000

开始

插入Table_3值(@i、‘ABCD’、‘123’、‘234’、‘345’、‘567’)

设置@i=@i 1

目标

用了3分11秒。

显示重叠('表3 ')

DBCC正在扫描'表3 '表.

表: ' : ' Table _ 3 '(370100359););索引ID: 0,数据库ID: 5

已执行表级扫描。

-....扫描页数: 1482

-扫描区域的数量.... 188

-地区转换数量.... 187

-每个地区的平均页数... 7.9

-扫描密度[最佳计数:实际计数]. 98.94% [186:188]

-区域扫描碎片... 1.60%

-每页平均可用字节数... 403.7

-平均页面密度(全)... 95.01%

DBCC执行完毕。如果DBCC输出错误信息,请联系系统管理员。

未索引的表大小:

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

索引表大小:

显示重叠('表3 ')

DBCC正在扫描'表3 '表.

表: ' : ' Table _ 3 '(386100416););索引ID: 1,数据库ID: 5

已执行表级扫描。

-....扫描页数: 1087

-扫描区域的数量.... 136

-移交次数.... 135

-每个区域的平均页数... 8.0

-扫描密度[最佳计数:实际计数]. 100.00% [1363360136]

-逻辑扫描片段... 0.00%

-区域扫描碎片... 3.68%

-每页平均可用字节数... 0.3

-平均页面密度(全)... 100.00%

DBCC执行完毕

。如果 DBCC 输出了错误信息,请与系统管理员联系。
如何进行Sqlserver数据写入表的测试

清空表数据。
修改表结构:
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 输出了错误信息,请与系统管理员联系。

先加索引后插入数据后表大小:
如何进行Sqlserver数据写入表的测试

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

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

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/124810.html

(0)

相关推荐

  • 塑料三角烧瓶,三角烧瓶和三角瓶的区别

    技术塑料三角烧瓶,三角烧瓶和三角瓶的区别一塑料三角烧瓶、应用领域区别:1、三角瓶多用于生物培育菌种实验,有盖。2、三角烧瓶即锥形瓶是化学实验中常见仪器,多无盖,可加热,用于化学实验。
    二、外形区别:
    3、锥形瓶一般来说

    生活 2021年10月26日
  • 如何使用Eviews做辅助回归来检验模型是否存在多重共线性

    技术如何使用Eviews做辅助回归来检验模型是否存在多重共线性本篇文章为大家展示了如何使用Eviews做辅助回归来检验模型是否存在多重共线性,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有

    攻略 2021年11月9日
  • slickedit怎么设置一直着色(slickedit如何取消复制)

    技术先进SlickEdit编辑器如何使用这期内容当中小编将会给大家带来有关先进SlickEdit编辑器如何使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。SlickEdit 作为一个

    攻略 2021年12月24日
  • cssfloat浮动教程(css浮动属性float详解)

    技术CSS浮动float属性怎么使用这篇文章主要讲解了“CSS浮动float属性怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS浮动float属性怎么使用”吧

    攻略 2021年12月21日
  • 查驾驶证,怎么在网上查自己的驾驶证信息

    技术查驾驶证,怎么在网上查自己的驾驶证信息方法一查驾驶证:1、首先打开支付宝,在首页上打开更多。2、在便民生活中找到城市服务。3、点击车主,打开驾驶证信息。4、输入你的驾驶证号和档案编号,点击查询就可以查到你的驾驶证信息

    生活 2021年10月26日
  • 如何进行数据库三大范式的分析

    技术如何进行数据库三大范式的分析这篇文章将为大家详细讲解有关如何进行数据库三大范式的分析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一: 引言 作为一个数据

    攻略 2021年12月2日