2011-04-11 46 views
4

我有一個存儲過程,並且裏面有一個分頁查詢,它根據我是哪個頁面返回一組結果。SQL Server 2008 SET QUOTED_IDENTIFIER OFF問題

​​

一切工作正常,但是當我與它的名字單或雙引號的產物,它不會在結果中顯示。 SET QUOTED_IDENTIFIER爲OFF。當我刪除引號時,它會起作用,但是當我再次添加引號時,它不會顯示出來。

我的解決方案是什麼?

+2

你在哪裏/如何查看結果?你有沒有試過SSMS? – 2011-04-11 22:46:12

+0

您如何通過產品的價值?它也是一個變量,或者是您動態構建插入語句?我認爲提供更完整的表格模式和示例查詢有助於回答您的問題。 – 2011-04-12 08:09:11

+5

沒有足夠的信息 – gbn 2011-04-13 05:03:36

回答

1

你的proc是否有機會致電indexed view

索引視圖取決於將SET QUOTED_IDENTIFIER設置爲ON。在明確使用WITH(NOEXPAND)的情況下,proc會適得其反,否則它可能會陷入停頓,因爲它會將其視爲正常視圖。請參閱以下article on MSDN

存儲過程和觸發器應 寫入與六個SET工作所需要的支持 的看法指標和計算 列 選項。查詢優化器不會 在視圖上使用索引,或者在SELECT語句中使用 列,這些列是由存儲過程執行的 或 在SET選項 錯誤設置時觸發的。存儲的 過程中的INSERT,UPDATE或 DELETE語句或修改 存儲在索引視圖 或計算列中的數據值會生成錯誤。