[英]Why are these strings not equivalent in MySQL but equivalent in SQL Server?
我正在嘗試使用供應商的轉換工具將應用程序數據庫從MySQL遷移到SQL Server。 當我這樣做時,我得到一個唯一的違反約束的錯誤,該錯誤表明我試圖在SQL Server表的一列中兩次寫入一個值(“ Canon Inc.”)。
我登錄了實時系統(MySQL),然后運行以下查詢,並顯示了查詢結果(零記錄)。 這告訴我MySQL在列包含重復值的地方看不到任何記錄。
但是,當我更廣泛地搜索佳能公司時,的確確實找到了兩條記錄。 但是,當我檢查字符串的字符和位長時,它們顯然並不完全相同 ,如下所示:
這兩個字符串之間有什么區別? 我有辦法清理嗎?
我的猜測是您在第二個佳能公司上有一個尾隨的空格。 這將導致字符長度比其他字符長一倍,我敢打賭,SQL Server忽略了尾隨空格。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.