SQL超时和查询性能

时间:2012-07-10 13:09:58

标签: c# sql sql-server

我有以下SQL查询:

SELECT TOP(100)
    VIEW_RAUMBUCHUNG_RAUM.RAUMID,
    VIEW_RAUMBUCHUNG.VON,
    VIEW_RAUMBUCHUNG.BIS,
    VIEW_RAUMBUCHUNG.RAUMBEZEICHNUNG,
    VIEW_RAUMBUCHUNG.THEMA,
    VIEW_RAUMBUCHUNG.V_EMAIL,
    VIEW_RAUMBUCHUNG.VERANSTALTER,
    VIEW_RAUMBUCHUNG_RAUM.COLOR,
    VIEW_RAUMBUCHUNG.RAUMID AS Expr1,
    VIEW_RAUMBUCHUNG_RAUM.BEZEICHNUNG
FROM VIEW_RAUMBUCHUNG
RIGHT OUTER JOIN VIEW_RAUMBUCHUNG_RAUM ON VIEW_RAUMBUCHUNG.RAUMID = VIEW_RAUMBUCHUNG_RAUM.RAUMID

有没有办法改善这个? VIEW_RAUMBUCHUNG包含27000个条目,即使我将结果限制为前100条记录,性能也非常慢。或者有没有办法优化SQL-Server?

我的第二个问题是,如果我尝试加载整个27000个条目,我会在20秒后得到超时,但我将IIS中的超时设置为120秒。为什么这样,我怎么能避免超时?

提前致谢。

1 个答案:

答案 0 :(得分:1)

  1. 在两个表格中的RaumID字段中创建索引
  2. 创建视图,而不是加入两个表
  3. 超时设置为更大的值或设为0表示不会超时