三种Python操作GBase 8s数据库数据类型的差异

三种Python操作GBase 8s数据库数据类型的差异

Python可以通过多种方式操作GBase 8s数据库,常见的类型包括DbtPy(原生)、Pyodbc(ODBC方式)和JayDeBeApi(调用jdbc)。以下是这三种操作方式对GBase 8s数据库的数据类型支持的对比

类型 数据类型 DbtPy Pyodbc JayDeBeApi(jdbc)
字符类型 CHAR(N)
字符类型 NCHAR(N)
字符类型 VARCHAR(N)
字符类型 NVARCHAR(N)
字符类型 LVARCHAR(N)
数值类型 DECIMAL(P,S)
数值类型 SMALLINT
数值类型 INTEGER
数值类型 BIGINT 是。需定义转换。
数值类型 INT8
数值类型 MONEY(P,S)
数值类型 SERIAL
数值类型 BIGSERIAL 是。需定义转换。
数值类型 SERIAL8
数值类型 SMALLFLOAT
数值类型 FLOAT
数值类型 DECIMAL§
日期时间类型 DATE
日期时间类型 DATETIME [FIRST TO LAST]
日期时间类型 INTERVAL [FIRST TO LIST] 是。部分类型不支持 否。无转换定义。
日期时间类型 TIMESTAMP(N)
布尔类型 BOOLEAN
扩展类型 LIST 是。使用bytes
JSON类型 JSON 是。需转码
BSON类型 BSON 是。需转码
大对象类型 TEXT 否。可插入,不可查询。
大对象类型 BYTE 是。需转码。 是。需转码。
智能大对象类型 CLOB 否。查询结果异常。 否。可插入,不可查询。
智能大对象类型 BLOB 是。需转码。 是。需转码。 否。可插入,不可查询。

总结:

29种数据类型中:
DbtPy完全支持的27种(含需转码),不能完全支持的包含:INTERVAL [FIRST to LIST]和TEXT
Pyodbc完全支持的27种(含需转码),不能完全支持的包含:INTERVAL [FIRST to LIST]和CLOB
JayDeBeApi(jdbc)完全支持25种,不能完全支持的包含:DECIMAL§、BSON、CLOB和BLOB

参考:

JayDeBeApi对数据类型的支持
Pyodbc对GBase 8s数据库的数据类型的支持
DbtPy对GBase 8s数据库的数据类型的支持

你可能感兴趣的:(GBase,8s,数据库,GBase,pyodbc,dbtpy,jaydebeapi)