最近将一个项目从ACCESS移植到FireBird上,使用了ADO+OLEDB For ODBC来连接嵌入式FireBird。但在Charater Set上出了些问题。
为了解决FB的中文查找BUG,项目使用了GB_2312字符集来创建。并将整个Embedded Firebird解压到了执行程序目录下。一开始,程序执行顺利,但当遇到insert和update语句时,却得到了“Character Set GB_2312 is not installed”的错误,于是在连接字符串中 增加CharSet=GB_2312参数设置。结果,程序一启动便跳出“Character Set GB_2312 is not defined”的错误。看来FB没有正确启动。
仔细查找FB的说明文件,原来是intl目录没有位于程序的启动目录,而我把整个Embedded Firebird放在了一个文件夹中。将文件夹中的所有文件都剪切到程序执行目录中,并修改相应的连接字符串,OK,成功。