我在我的C#代碼中發生錯誤,並且在調試後發現 這是因爲在表中的條目中存在尾隨空格。 例如「AAA」SQL表尾隨空格導致錯誤
在我的C#代碼現在嘗試設置組合框的選定值這個(組合框與「AAA」的價值的項目和失敗。
顯然,解決的方法是修復DB 'AAA'
現在我去到DB
,並做到這一點:
Select * from mytable
where Name='aaa'
我得到的名稱'aaa'
Select * from mytable
where Name='aaa '
我再次得到名稱'aaa'
Select len(name) from My table
where name ='aaa'
我得到3
我的問題是:如何查詢我知道它有 'AAA' 的額外空間的表?
這是它如何工作的SQL Server中。 –
因此,我無法查看錶格數據並檢查它是否有拖尾空格? –
https://support.microsoft.com/zh-cn/kb/316626 SQL Server遵循ANSI/ISO SQL-92規範(第8.2節,<比較謂詞>,常規規則#3),瞭解如何將字符串與空格進行比較。 ANSI標準要求在比較中使用填充字符串,以便在比較它們之前匹配它們的長度。填充直接影響WHERE和HAVING子句謂詞的語義以及其他Transact-SQL字符串比較。例如,對於大多數比較操作,Transact-SQL認爲字符串'abc'和'abc'是等價的。 –