Merhaba Arkadaşlar, Farklı collation lı birden çok veritabanı ile çalışırken bu can sıkıcı hatayla karşılaşıyoruz maalesef. Özellikle joinleme işlemi yaparken aldığımız bu hata ; üzerinde çalıştığımız veritabanındaki tablonun collation ile başka bir veritabanından çağırdığımız tablonun collationlarının uyuşmamasıdır. Çözüm olarak iki yöntemimiz var... 1-) COLLATE DATABASE DEFAULT komutu ile joinlenen veriler arasında collation ı üzerinde çalışılan veritabanın Collation a çevirmek.. Örnek SQL : SELECT T1.EmployeeName, T2.DeptName FROM ServerA.dbo.EmpTab T1 JOIN ServerB.dbo.DeptTab T2 ON T1.DeptCode COLLATE DATABASE_DEFAULT = T2.DeptCode COLLATE DATABASE_DEFAULT Bu yöntem az joinli sqllerde etkili ve okunabirliliği bozmuyor. 2-)Way efendim benim bir sürü joinim var sql imin okunurluğu bozulmasın diyorsanız dışardan çağrılan veritabanındaki tabloyu select .. into #temp e basarak oluşturduğumuz temp tablonun collationını değiştirdikten sonra onunla çalı...
Abi blog gerçekten sağlam olmuş. Aydınlattın bizi. Benim kitaba para bulamazsam ben de böyle bi şey deniyim ne dersin?
YanıtlaSil