程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> ms sql-求助!存儲過程中的“SET ANSI_NULLS ON自動轉換成 OFF”的問題,在線等~

ms sql-求助!存儲過程中的“SET ANSI_NULLS ON自動轉換成 OFF”的問題,在線等~

編輯:編程綜合問答
求助!存儲過程中的“SET ANSI_NULLS ON自動轉換成 OFF”的問題,在線等~

如題,今天突然發現數據庫中的存儲過程裡面的“SET ANSI_NULLS ON”
都變成了 OFF,一直以來都沒有遇到過這樣的情況,請問是什麼原因能導致這樣的問題出現呢?求解~~~

最佳回答:


在創建或修改 Transact-SQL 存儲過程時,數據庫引擎 將保存 SET QUOTED_IDENTIFIER 和 SET ANSI_NULLS 的設置。執行存儲過程時,將使用這些原始設置。因此,所有客戶端會話的 SET QUOTED_IDENTIFIER 和 SET ANSI_NULLS 設置在執行存儲過程時都將被忽略。在創建或更改存儲過程時不保存其他 SET 選項(例如 SET ARITHABORT、SET ANSI_WARNINGS 或 SET ANSI_PADDINGS)。如果存儲過程的邏輯取決於特定的設置,則應在過程開頭添加一條 SET 語句,以確保設置正確。從存儲過程中執行 SET 語句時,該設置只在存儲過程完成之前有效。之後,設置將還原為調用存儲過程時的值。這樣一來,單個客戶端就可以設置所需的選項,而不會影響存儲過程的邏輯。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved