Compare sync script and character set/collation

Currently, the compare sync script is not perfect, because it overwrites the collation of stored procedures/functions in the target DB, by not specifying it in the script.

Is it possible to add the COLLATE syntax to the stored procedure/function parameters after the CHARACTER SET syntax?

Also, an option to disable the CHARACTER SET syntax completely would also help.

Hi Yoni,

we have looked into this issue and have a good news for you - in a matter of week we’ll be releasing 1.1.0 version of Toad Edge and it will contain a possibility to ignore parameters CHARACTER SET when doing compare & sync.

To use it you would go to Outline view for opened compare editor.

There select “Detailed Settings…” -> Routine Details -> Data Type Characer Set. Check this option and it will be ignored in following comparisons.




This option doesn’t fix the wrong CHARACTER SET syntax in the sync script, it only ignores the syntax in the comparison process.

Please fix the sync script so it will have the full “CHARACTER SET xxx COLLATION yyy” and not just “CHARACTER SET xxx” because it breaks the application with the error: “illegal mix of collations”

The sync script always has an incomplete CHARACTER SET syntax without the COLLATE part, which after sync of Target DB, will cause an error in the application of “Illegal mix of collations”

I would like to add that it will be better to also allow dropping the CHARACTER SET/COLLATE syntax all together, because the target SP doesn’t always have this syntax in its creation script, so the comparison will always find a false difference, even when the ignore flag is checked in Toad Edge detailed settings.

Hi Yoni,

in the next release 1.2.0 there is COLLATE part added into functions and procedure. Also difference in charset and collation is merged into one. And it can be then ignored as whole.

Hope this change will help to solve your issue.