我创建了一个页面来插入和修改现有mysql表的数据。 但是根据我的要求和表的结构,我必须修改用于插入数据的sql。
因为我对Rapidclipse和Java完全陌生,所以我需要一些提示/示例,以了解如何以及在何处进行修改。 看所有Rapidclipse视频并不能给出正确的提示。
我想在mysql-table中插入三个字段
我必须手动编辑的字段之一。
第二个字段始终包含相同的值。
第三个字段包含一个计算值,我必须在运行时从数据库中获取该值。
作为sql,我将使用以下代码:
INSERT INTO OKM_DB_METADATA_VALUE (DMV_TABLE, DMV_COL00, DMV_COL01)
VALUES ('T_supplier', (select * from (select max(cast(DMV_COL00 as
Integer)) +1 from OKM_DB_METADATA_VALUE as t2 where DMV_TABLE =
'T_supplier') as t3 ) , 'new suppliername');
DMV_Table字段的值将始终为'T_supplier'
DMV_COL00字段的值始终是col +1中的最高值
字段DMV_COL01的值将始终手动输入
(我不能/我不想修改/使用表格形式,-design和trigger,因为它是OpenKM的原始表格)
提前谢谢!
最好的问候
OpaHeinz
答案 0 :(得分:0)
只是对sql代码的建议..您的代码可以在更像SQL的代码中进行重构..您可以避免使用innerner子查询..并使用常规的插入选择
INSERT INTO OKM_DB_METADATA_VALUE (DMV_TABLE, DMV_COL00, DMV_COL01)
select 'T_supplier', max(cast(DMV_COL00 asInteger)) +1 , 'new suppliername'
from OKM_DB_METADATA_VALUE
where DMV_TABLE ='T_supplier'
答案 1 :(得分:0)
解决方案的第一步
在保存功能的buttonClick事件中 我使用以下命令设置DMV_Table字段的值:
git log whatever conditions -- '*.java' '*.txt'
第二步; 我在仅提供预期值的数据库中创建了一个视图:
... this.txtDmvTable.setValue("T_supplier");
之后,我在Rapidclipse中创建了一个实体,从视图中读取该值并将其分配给另一个字段DMV_COL00。
就这些。