Tsql 如何向大容量insert语句添加参数以防止SQL注入并提高性能?
我正在从web上的一个用户导入一个包含15万行的文件,该文件必须被分解,从而导致大约160万个条目被添加到数据库中 此时,我首先添加主记录,然后使用第一条记录后面提供的键添加子记录 虽然我可以预编译查询并重新使用它,但我希望将它们组合在一起,但我担心此时无法对查询进行参数化Tsql 如何向大容量insert语句添加参数以防止SQL注入并提高性能?,tsql,sql-injection,bulkinsert,Tsql,Sql Injection,Bulkinsert,我正在从web上的一个用户导入一个包含15万行的文件,该文件必须被分解,从而导致大约160万个条目被添加到数据库中 此时,我首先添加主记录,然后使用第一条记录后面提供的键添加子记录 虽然我可以预编译查询并重新使用它,但我希望将它们组合在一起,但我担心此时无法对查询进行参数化 目前,我仅通过查询方法以大约300行或3000次查询/秒的速度导入数据。我不确定您对如何加载数据有何限制,但有一些好方法可以获得良好的数据库批量导入率->。在处理数据导入过程时,我总是发现将其分为几个阶段很有帮助: 导入阶段
目前,我仅通过查询方法以大约300行或3000次查询/秒的速度导入数据。我不确定您对如何加载数据有何限制,但有一些好方法可以获得良好的数据库批量导入率->。在处理数据导入过程时,我总是发现将其分为几个阶段很有帮助:
我不确定这是否适用于你的情况,我是否偏离了你的要求;但是,希望其中有一些有用的东西。我所知道的提高大数据负载性能的唯一方法是使用,但这对于第一步没有帮助,即插入父行以生成外键值。这可能有助于处理儿童行,尽管我确实想过使用临时表来处理这一问题。也许将行的索引添加到更大的集合中,并在将数据移动到活动表中时使用实际id更新它们。我认为这会起作用,但它仍然不能解决更大的问题。我接受这一点,因为这个概念是正确的,应该遵循,即使它没有解决问题的参数。。