Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 记录插入方面的高效数据库访问_Sql_Tsql_Insert_Data Access Layer - Fatal编程技术网

Sql 记录插入方面的高效数据库访问

Sql 记录插入方面的高效数据库访问,sql,tsql,insert,data-access-layer,Sql,Tsql,Insert,Data Access Layer,对于“新手”这个问题,我提前表示歉意,但我在SQL的大多数方面基本上还是个新手。 我的问题来自SQL艺术第二章的一部分。在题为“稳定的数据库连接”的文章中,作者提到了几种将大量行插入数据库的方法。以下是格式中的相应列表 Test; Results Connect/Disconnect for each line in turn; 7.4 lines loaded per second Connect Once, all candidate lines individually inserte

对于“新手”这个问题,我提前表示歉意,但我在SQL的大多数方面基本上还是个新手。 我的问题来自SQL艺术第二章的一部分。在题为“稳定的数据库连接”的文章中,作者提到了几种将大量行插入数据库的方法。以下是格式中的相应列表

Test; Results Connect/Disconnect for each line in turn; 7.4 lines loaded per second Connect Once, all candidate lines individually inserted; 1,681 lines loaded per second Connect Once, all candidate lines inserted in arrays of 10 lines; 5,914 lines inserted per second Connect Once, all candidate lines inserted in arrays of of 100 lines; 9,190 lines inserted per second 测验后果 依次连接/断开每条线路;每秒加载7.4行 连接一次,所有候选线分别插入;每秒加载1681行 连接一次,将所有候选线插入10行的阵列中;每秒插入5914行 连接一次,将所有候选线插入100线的阵列中;每秒插入9190行 此外,作者还提到了“更快的直接加载技术”


不幸的是,我并不完全理解插入数组的想法(如果有的话)。有谁能详细介绍一下作者提到的插入数组和其他“直接加载技术”方面的技术吗?

将大量数据插入SQLServer表的最快方法是使用一个称为“批量插入”的过程。有几种方法可以做到这一点。SQL Server附带了一个名为bcp的命令行应用程序,有一个TSQL命令大容量插入,还有一个.NET SQL客户端对象System.Data.SqlClient.SqlBulkCopy。

作者正在展示

INSERT INTO Table (Column) 
VALUES ('myValue')
只会这么快

这将大大加快速度

INSERT INTO Table (Column) 
VALUES ('myFirstValue'), 
('mySecondValue'), ...
作者说,拥有10个
项每秒可插入5914行,但如果单个SQL语句中有100个项,则加载速率将上升到每秒9190行

最后,“直接加载技术”指的是批量插入操作。您可以通过谷歌查找大量教程,用于上传文件,然后将其处理到表中。

我要补充的是(至少在SQL Server上),您可以发送XML文件并插入其中的行。相当快。不像大容量插入那样快,而是像将
插入到表中“格式化”一样快