有人可以向我解釋在SQL服務器中默認啓用ANSI填充的邏輯。爲什麼在SQL Server中默認啓用ANSI填充?
凡兩段代碼如下還真
if len(' ') = len('') begin
print 'true'
end
else begin
print 'false'
end
if ' ' = '' begin
print 'true'
end
else begin
print 'false'
end
編輯:我不在乎,你可以將其關閉。有誰知道它爲什麼在?這是數據庫設計決策嗎?它是一個數據庫優化?這被使用的積極性是什麼?它對我來說當然沒有多大意義 - 我所看到的只是消極的一面。
好,從它的名字,邏輯將是符合標準? ANSI =美國國家標準學會。 – derobert
這只是一個默認設置。您可以輕鬆更改它,無論是每個數據庫還是單個批次/事務。與默認排序規則不區分大小寫一樣,有些人會認爲這是一個糟糕的選擇。 – Yuck
請注意,'SET ANSI_PADDING OFF'是[不建議使用的功能](http://msdn.microsoft.com/zh-cn/library/ms143729.aspx),在未來的某些版本中甚至不允許。 –