Use UTF8 as the character set for your Firebird database. This is the only option that supports all possible characters since UNICODE_FSS is a thing of the past.
This, however, is orthogonal to your question about creating Unicode programs with Delphi. Even for the new Ansi Delphi program using UTF8 encoding, it will be your best option, since you can translate Ansi programs (for example, using the GNU gettext for Delphi http://dybdahl.dk/dxgettext/ ) into other languages, and only with the base UTF8 data you can store all the text that can be sent to the database, depending on the Windows codepage. An alternative would be to use different sets of database characters for different deployments, and then you can no longer simply exchange database files or transfer data between installations without first overwriting them.
For your development, make sure your database administration program works flawlessly with UTF8 databases. Since most of them are written in Delphi, you may have problems unless it uses Unicode compatible controls.
mghie
source share