Sử dụng UTF8 làm ký tự được đặt cho cơ sở dữ liệu Firebird của bạn. Đó là lựa chọn duy nhất mà hỗ trợ tất cả các nhân vật có thể, vì UNICODE_FSS là một điều của quá khứ.
Điều này tuy nhiên trực giao với câu hỏi của bạn về việc tạo chương trình Unicode bằng Delphi. Ngay cả đối với một chương trình Ansi Delphi mới sử dụng bảng mã UTF8 sẽ là lựa chọn tốt nhất của bạn, vì bạn có thể dịch các chương trình Ansi (ví dụ bằng cách sử dụng GNU gettext cho Delphi http://dybdahl.dk/dxgettext/) sang các ngôn ngữ khác, và chỉ với một cơ sở dữ liệu UTF8, bạn có thể lưu trữ tất cả các văn bản có thể được gửi đến cơ sở dữ liệu, tùy thuộc vào mã của Windows. Cách khác là sử dụng các bộ ký tự cơ sở dữ liệu khác nhau cho các triển khai khác nhau, và sau đó bạn không còn có thể trao đổi các tệp cơ sở dữ liệu hoặc di chuyển dữ liệu giữa các cài đặt mà không cần phải mã hóa lại nó.
Đối với công việc phát triển của bạn, hãy đảm bảo rằng chương trình quản trị cơ sở dữ liệu của bạn hoạt động hoàn hảo với cơ sở dữ liệu UTF8. Vì hầu hết chúng được viết bằng Delphi, bạn có thể có vấn đề, trừ khi nó sử dụng các điều khiển có khả năng Unicode.
Câu hỏi tương tự và một số trải nghiệm: http://stackoverflow.com/questions/2302670/delphi-dbexpress-and-interbase-utf8-migration-steps-and-risks – mjn