小编Iva*_*McA的帖子

为使用完全相同的查询重复访问数据库的应用程序优化 SQL Server?

我正在处理后端使用 SQL Server Express (2014) 的 Windows 应用程序的性能问题。

我主要是通过查看索引 SQL Server 端来设法使这个运行得更好,但是有一个特定的报告仍然运行得很慢。

查看它在做什么,它似乎在应用程序中循环并SELECT *针对一张表查询出数千个非常简单的查询WHERE = Primary Key,因此在每种情况下只检索一条记录。当我说 IDENTICAL 时,我的意思是相同的,它甚至没有改变主键来获取不同的东西,它显然每次需要时都从数据库中请求完全相同的记录,仅在几次中最多一百次秒。

这是一个示例报告,当服务器安静时,它需要大约 10-15 秒才能运行 - 查询运行了多少次我已添加为注释:

SELECT * FROM "Patient" WHERE "_Recno" = 35051  -- (runs 106 times)
SELECT * FROM "Client" WHERE "_Recno" = 15607   -- (99 times)
SELECT * FROM "SpeciesEntry" WHERE "_Recno" = 180   -- (97)
SELECT * FROM "Table" WHERE "_Recno" = 9    -- (97)
SELECT * FROM "DefaultEntry" WHERE "_Recno" = 2615  -- …
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-express sql-server-2014

5
推荐指数
1
解决办法
689
查看次数