- 论坛徽章:
- 0
|
Postgres 8.0 使用测试报告
一环境
1、 服务器软件版本: postgresql-8.0.0-rc5安装后版本情况如下:
a) ODBC版本:8.00.00.03
b) OLEDB版本:1.0.0.15
2、 操作系统WINDOWSXP+SP1
3、 安装时选择 LOCALE = CHINESE,TAIWAN, ENCODING为MULE_INTERNAL,(安装程序要求软件须安装在NTFS分区上)
4、 其它安装已默认值设置
二、操作过程
1、 激活PGSQL,建立一个数据库DBTEST属性如下:
a) 所有者Postgres
b) 编码:UNICODE 其它默认
c) SQL语言为:
CREATE DATABASE "DbTest"
WITH ENCODING='UNICODE'
OWNER=postgres;
2、 建立一个基本表 :
CREATE TABLE tbtest
(
s1 varchar(10),
s2 varchar(30),
f1 numeric(12, 2),
s3 char(100),
CONSTRAINT "Key_Main" PRIMARY KEY (s1, s2)
) WITH OIDS;
ALTER TABLE tbtest OWNER TO postgres;
3、 激活DELPHI7,建立一个基本输入输出程序
a) BDE+ODBC方式的联接,使用Tquery 和Ttable方式来操作资料表。
b) 使用ADO+OLDDB方式的联接,使用TADOQuery 和TADOTable 的方式来操作资料表。
二、测试的问题反馈
1、 查询
a) BDE
(1) 使用Tquery, Sql语言为“Select s1,s2,f1,s3 from tbtest”,从反回的结果集合中,根据找不到字段S1,S2,S3,仅仅能看到f1字段。
(2) 使用TTABLE连接表直接显示资料正确。
b) ADO
(1) 使用同BDE同样的方式,显示都没有问题.
2、 增加资料
a) BDE
(1) 使用TQUERY的SQL语言增加一记录,如果程序使用默认代码集,不能存入汉字(使用TTABLE查询显示出为为?,通过DELPHI的SQLEXPLORE查询的结果也为?),通过pgadmin查询的结果是空“”。
(2) 使用SQLEXPLORE,通过INSERT语句,可以插入带汉字的记录,结果在任何地方显示都正确。
b) ADO
(1) 使用Tquery的SQL语言增加一条记录,系统出错。
3、 重新安装ODBC,版本为:
(1) 通过BDE的Database不能连接到数据库。
b) 重新安装PG8
(1) 安装时选择 LOCALE = CHINESE,TAIWAN, ENCODING为SQL_ASCII
(2) 其它安装已默认值设置
(3) 问题依然存在:查询不出来VARCHAR资料, 插入汉字资料显示为?
三、总结:
1、 通过ODBC来操作数据表,问题比较多。原因或许是ODBC的问题,或许是DELPHI自己的BDE的问题,不能处理。
2、 使用PgAdmin工具来操作数据资料没有任何问题。
3、 Postgres8中还有遇到繁体编码的问题,有些字体的Postgres中不能处理,如“许”,“朱”,此报告今后我会传上来。 |
|