Foreign Language and Character Sets

(CHARSET)

When clients primarily work in a foreign language that does not use the standard Roman alphabet (English alphabet), the database needs to be set to a character set that supports that language. For a list of supported languages and their corresponding character sets, see https://firebirdsql.org/refdocs/langrefupd25-charsets.html

Use the following SQL statement to change the character set name of the database.

Note

Existing text data will not be updated, the change will only be applied to text entered after the change has been made so it's important to do this before the database goes live.

Flamerobin

When the database is registered in Flamerobin, you need to select the matching character set. See screenshot below:

If the registered charset does not match the database charset, a warning message will be displayed when the database is connected. See image below:

Troubleshooting

When the charset is set to NONE, and the source (application) is saving foreign characters into the database, 'malformed string...' errors might be returned when certain procedures are executed. See image below.

To fix this, the charset needs to be updated to a charset that supports the language that is being used using the sql above and the stored procedures that are returning errors need to be re-complied. This can be done by 'altering' the stored procedure in flamerobin.