Chyba: [SQL:446,16] Cannot resolve collation conflict ...

PříspěvekNapsal: 10.11.2006 16:56
od jana.krapkova
Chyba znamená nesoulad mezi tříděním serveru (třídění systémových DB) a tříděním databází Heliosu. Zjistíte to snadno - třídění serveru najdete v Globálních konstantách, třídění databází HeIQ najdete v Systémových konstantách (z NASTAV si přidejte sloupec Třídění databáze).

Řešením je uvést všechno do souladu (nebo mít stejné alespoň třídění všech DB Heliosu).
Změnu třídění DB Heliosu lze provést pomocí exportu/importu databáze - v systémových konstantách na vybrané DB Ctrl+Shift+E (viz viewtopic.php?t=25)

POZOR, před touto akcí je pochopitelně nutná záloha DB.

Collation conflict... při importu externí akce [*.HEK]

PříspěvekNapsal: 25.07.2007 08:07
od jan.havranek
Ne vždy je možné sjednotit třídění SQL Serveru a databází Helios, na serveru mohou historicky běžet i jiná data, vyžadující jiné třídění apod.

V takových případech může nastat následující situace:
Do systému je třeba nahrát nějakou Externí akci, je použit soubor s příponou *.HEK a při importu se objeví známá hláška Cannot resolve collation conflict... .

Jde o to, že při importu *.HEK souboru je využívána tempdb a pokud tato má jiné třídění než DB Heliosu, dojde ke zmíněné chybě.

Lze to obejít exportem ve formátu scriptu *.HQL. Ten tempdb nevyužívá a jeho import projde.

Re: Chyba: [SQL:446,16] Cannot resolve collation conflict ..

PříspěvekNapsal: 17.08.2007 08:36
od jan.novotny
Na tuto chybu jsem narazil v případě, kdy vytvářím definovanou vazbu na view, které je z databáze v jiném collation než je Helios. Problém jsem vyřešil úpravou SELECTu v definovaném přehledu (view) takto:

SELECT neco COLLATE CZECH_CI_AS AS neco
FROM ....

kde CZECH_CI_AS je collation DB Helios.

Příklad: Do přehledu Karty zboží potřebuji přiJOINovat informace z jiného IS, jehož DB běží na SQL serveru, ale má jiné collation.

Radek Naumec