在db2中创建数据类型为的表时出错

在db2中创建数据类型为的表时出错,db2,db2-luw,Db2,Db2 Luw,我是DB2新手。我尝试使用以下查询创建表: CREATE TABLE CLP.legal_bill_charge( client_id VARCHAR(11), client_division_id VARCHAR(11), client_office_id VARCHAR(11), matter_id VARCHAR(11), legal_bill_charge_id VARCHAR(13) NOT NULL, legal_bill_id VARCHAR(11), lawfirm_charge

我是DB2新手。我尝试使用以下查询创建表:

CREATE TABLE CLP.legal_bill_charge(
client_id VARCHAR(11),
client_division_id VARCHAR(11),
client_office_id VARCHAR(11),
matter_id VARCHAR(11),
legal_bill_charge_id VARCHAR(13) NOT NULL,
legal_bill_id VARCHAR(11),
lawfirm_charge_number decimal(10,4),
timekeeper_id VARCHAR(11),
timekeeper_name varchar(256),
timekeeper_billed_level varchar(20),
charge_type char(10),
charge_text varchar(300),
long_charge_text varchar(8000),
charge_date TIMESTAMP   ,
original_units decimal(8,2),
original_unit_price decimal(23,6),
original_amount decimal(23,6),
current_units decimal(19,13),
current_unit_price decimal(23,6),
current_adjustment_amount decimal(23,6),
lf_adjustment_amount decimal(23,6),
lbc_tax_type varchar(6),
lbc_tax_rate decimal(16,15),
tax_amount decimal(65,36),
recommended_expense_amount decimal(23,6),
recommended_fee_amount decimal(23,6),
activity_code varchar(255),
activity_desc varchar(255),
task_code varchar(255),
task_desc varchar(255),
phase_code_id varchar(255),
phase_code_desc varchar(255))
in FAC032TS
organize by row;
但是,我得到了以下错误: DB21034E由于该命令不是SQL语句,因此将其作为SQL语句处理 有效的命令行处理器命令。在SQL处理过程中,它返回: SQL0604N列、不同类型的长度、精度或比例属性, 结构化类型、数组类型、结构化类型的属性、例程、强制转换 目标类型、类型映射或全局变量“decimal(65,36)”无效。
SQLSTATE=42611

SQL0604N列、不同类型、结构化类型、数组类型、结构化类型的属性、例程、强制转换目标类型、类型映射或全局变量“decimal(65,36)”的长度、精度或比例属性

有人能指出我犯了什么错误吗?
提前感谢。

之所以出现此错误,是因为Linux/Unix/Windows上的Db2提供的十进制数据类型的最大精度为31。如果使用DECFLOAT,则精度为34,但应用程序必须与该数据类型兼容

有关支持的数据类型及其特征,请参阅文档

您可以使用FLOAT或DOUBLE来近似较大的数字,但前提是应用程序和SQL的编码正确以进行补偿


仔细验证要求。

运行Db2服务器的操作系统是什么,Db2的版本是什么?您必须始终了解Db2的这些内容。Db2 LUW中十进制数据类型的最大精度是31。如果使用数据类型DECFLOAT,最大精度是34,但您必须确保应用程序与此兼容。linux os和版本为10.5.9Datatype,由我的客户提供,用于创建此格式的表。您能告诉我该问题的其他解决方案吗