Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.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
Linq 如何减少数据库';压力_Linq_Sql Server 2005 - Fatal编程技术网

Linq 如何减少数据库';压力

Linq 如何减少数据库';压力,linq,sql-server-2005,Linq,Sql Server 2005,我有一个数据库(sql server 2005),现在表中有大约100000条名为users的记录,当我使用linq to sql进行查询时,速度越来越慢。我如何进行一些操作以提高速度?分析您的查询并向表中添加一些索引可能会有所帮助 要获得更具体的答案,请发布更具体的信息(表结构、索引、L2S生成的sql代码等)分析查询并向表中添加一些索引可能会有所帮助 要获得更具体的答案,请发布更具体的信息(表结构、索引、sql代码L2S生成等)使用存储过程,然后使用linq To sql获得所需的行,这将提

我有一个数据库(sql server 2005),现在表中有大约100000条名为users的记录,当我使用linq to sql进行查询时,速度越来越慢。我如何进行一些操作以提高速度?

分析您的查询并向表中添加一些索引可能会有所帮助


要获得更具体的答案,请发布更具体的信息(表结构、索引、L2S生成的sql代码等)

分析查询并向表中添加一些索引可能会有所帮助


要获得更具体的答案,请发布更具体的信息(表结构、索引、sql代码L2S生成等)

使用存储过程,然后使用linq To sql获得所需的行,这将提高性能。

使用存储过程,然后使用linq To sql获得所需的行,这将提供性能。

您可以(按优先顺序)

  • 将查询另存为存储过程
  • 向用户添加索引 表,用于查询/排序的内容
  • 分析您的查询 (如果是复杂的),看看是否有一种资源密集度较低的方法 做这件事的必要性。有图形查询分析器可以帮助您
  • 作为最后的手段,不要使用LINQ,而是使用ADO.NET实体框架,它的速度要快得多。但是,只有当您已经完成了上述所有工作时,您才能看到疯狂的东西的性能改进
您可以(按优先顺序)

  • 将查询另存为存储过程
  • 向用户添加索引 表,用于查询/排序的内容
  • 分析您的查询 (如果是复杂的),看看是否有一种资源密集度较低的方法 做这件事的必要性。有图形查询分析器可以帮助您
  • 作为最后的手段,不要使用LINQ,而是使用ADO.NET实体框架,它的速度要快得多。但是,只有当您已经完成了上述所有工作时,您才能看到疯狂的东西的性能改进

分析数据库访问并查看需要优化的内容的最佳工具是:

第一个选项将允许您查看从应用程序发送到数据库的确切查询,如果您的应用程序比您想象的更具有聊天能力,那么这一选项尤其有用。第二个选项将允许您接受这些查询,并准确地查看SQL server正在使用它们做什么


在图形执行计划中,查找使用大量CPU的步骤和传输大量记录的路径。这些是您想要优化的。您可能正在某个地方进行表扫描,速度很慢,或者可能在某个地方加入了比您需要的更多的记录,速度很慢,等等。

您可以使用的分析数据库访问并查看需要优化的内容的最佳工具有:

第一个选项将允许您查看从应用程序发送到数据库的确切查询,如果您的应用程序比您想象的更具有聊天能力,那么这一选项尤其有用。第二个选项将允许您接受这些查询,并准确地查看SQL server正在使用它们做什么


在图形执行计划中,查找使用大量CPU的步骤和传输大量记录的路径。这些是您想要优化的。可能您正在某个地方执行表扫描,速度很慢,或者可能在某个地方加入了比您需要的记录更多的记录,速度很慢,等等。

向我们展示SQL查询和表结构(至少索引)。向我们展示SQL查询和表结构(至少索引)。事实上,您应该始终执行前两项,除非您的查询很简单(从用户中选择*)。在这种情况下,存储过程可能不会有帮助,但您应该始终将索引添加到要搜索的字段中,只要它们包含很大不同的非空值。(如果有很多重复项,请进行测试,因为索引实际上可能较慢)。事实上,您应该始终执行前两项,除非您的查询非常简单(从用户中选择*)。在这种情况下,存储过程可能不会有帮助,但您应该始终将索引添加到要搜索的字段中,只要它们包含很大不同的非空值。(如果有很多重复项,请进行测试,因为索引实际上可能较慢)。