Firebird and Interbase sql issues

UPDATE: Be ready to jump to Firebird2 version, it has fixed major unicode_fss problems and now has UTF8 encoding attribute. And FlameRobin admintool is way to go. Problem described here is still valid if you use UNICODE_FSS charset for string columns. Just start using UTF8 charset attribute to fix problems.
Firebird info page


IBX Cannot create shared resource. (Windows error 5) error
This is an official Borland components for Interbase db. You should use IBObjects for Firebird db. This for Delphi5 only.
shared_res.txt

Firebird links
Several download links
Firebird Sourceforge site where you can find packages for all OS available. I use "firebird-win32" package.
Jaybird jdbc driver is "firebird-jca-jdbc-driver" package and "firebird-net-provider" is dotNET driver.
IBPhoenix
IBPhoenix download
IBObjects with a good community site

Firebird Admin tools
Workbench is the best admintool
IBExpress is one of the best
IBOConsole is a very good admintool
Marathon is a good admintool
IB_SQL is a relative simple
IBAccess is a relative simple
FlameRobin a new and early version

Run Firebird without registration (win only)
You can testrun FB without an installation or .dll registrations. Just download win32 .zip file, unzip to "c:\program files\firebird" folder, create .bat file with "fbserver.exe -a" command only. Then run it and you have an excellent db server up and running.

Use UNICODE_FSS unicode (UTF-8) as default charset in FB database
UPDATE: Be ready to jump to Firebird2 version, it has fixed major unicode_fss problems and now has UTF8 encoding attribute. And FlameRobin admintool is way to go.


FB can give you column-level encoding setting, but I simplify things and put db-level default to unicode. This will make your life easier, believe me. I dont have any UI admin tools, so must do things my way. I have tested few admin tools, but they could not handle unicode characters. Anyone know a good FB admin tool with proper unicode support?

* Run "fbsrver.exe -a" to launch server
* Run "{fb}\bin\isql.exe" commandline util. Do not insert records as it cannot handle unicodes properly.
* We only create a new database with isql.exe. 
  Last selectquery will verify a db default charset.
   SQL> SET SQL DIALECT 3;
   SQL> CREATE DATABASE 'c:\program files\firebird\data\testdb2.fdb' user 'sysdba' password 'masterkey' DEFAULT CHARACTER SET UNICODE_FSS;
   SQL> SELECT * FROM rdb$database;
   SQL> QUIT;
* Add dbalias to simplify connection strings: Edit "{fb}\aliases.conf" file 
  and add "testdb2 = c:\Program Files\Firebird\data\testdb2.fdb" mapping.
You must give UNICODE_FSS parameter in connection strings (jdbc and dotNET driver).
Jaybird jdbc url:
"jdbc:firebirdsql:localhost:testdb2?lc_ctype=UNICODE_FSS&dialect=3"
dotNET url:
"Database=testdb2;User=SYSDBA;Password=masterkey;Server=localhost;charset=UNICODE_FSS;dialect=3"

But then the bad news about the Firebird unicode support.
UPDATE: This has been fixed in Firebird2 version, use UTF8 encoding to make problems away.

Java and dotNET test programs
I've attached a small test programs, feel free to download with full sources. Both zips have a driver files as well.
JdbcTest.zip has java client. This will have a feature to run batch scripts. Use it to create tables and insert records. Script will support UTF-8 format, so can test your favourite unicode characters easily.
NetTest.zip has NET1.1 client. It can only run select queries.
TestDb2.zip unicode testdb with few records. Copy to "{fb}\data\" folder, add alias mapping to aliases.conf file.

Info about Firebird
Migration guide MSSQL to FB, this has an excellent table comparing column datatypes.
FB installation infos

IBObjects data-aware components for Firebird
Data-aware components for Delphi/CBuilder IDEs
IBObjects
IBOBjects TechInfo
IB_SQL Admin Tool