|
版本: |
X5.2.7 |
小版本号: |
|
|
|
数据库: |
Sybase |
服务器操作系统: |
Windows |
应用服务器: |
Tomcat |
客户端操作系统: |
Windows 7 |
浏览器: |
Chrome |
|
|
自定义动作的函数如下:public static int insert(String knowledgeID, String ids) {
System.out.println("knowledgeID:" + knowledgeID);
System.out.println("ids:" + ids);
String ksql = "insert into KP_KNOWLEDGE_PROBLEM_RELATION kpr (kpr,kpr.KNOWLEDGE_ID,kpr.PROBLEM_ID) "
+ " (select guid(),:knowledgeID,KP_PROBLEM from KP_PROBLEM KP_PROBLEM where KP_PROBLEM in (:ids))";
Map map = new HashMap();
map.put("knowledgeID", knowledgeID);
map.put("ids", ids);
int i = KSQL.executeUpdate(ksql, map, "/metrodetection/knowledge_problem_store/data", null);
System.out.println("插入行数:" + i);
return i;
}
调用动作都没问题,但是通过代码执行行数为0;
使用sybase查询分析器执行日志中的sql语句,能正常插入;这是为什么?
日志如下:
2018-11-30 16:38:08
exec KSQL: insert into KP_KNOWLEDGE_PROBLEM_RELATION kpr (kpr,kpr.KNOWLEDGE_ID,kpr.PROBLEM_ID) (select guid(),:knowledgeID,KP_PROBLEM from KP_PROBLEM KP_PROBLEM where KP_PROBLEM in (:ids))
--> sql:INSERT INTO KP_KNOWLEDGE_PROBLEM_RELATION(KP_KNOWLEDGE_PROBLEM_RELATION.fID, KP_KNOWLEDGE_PROBLEM_RELATION.KNOWLEDGE_ID, KP_KNOWLEDGE_PROBLEM_RELATION.PROBLEM_ID)(SELECT STR_REPLACE(CAST (NEWID() AS VARCHAR(36)), '-', ''), ? , KP_PROBLEM.fID FROM KP_PROBLEM KP_PROBLEM WHERE KP_PROBLEM.fID IN ( ? ) )
--> binds:['0F4913FF89C24E6082EAD0B50C2EC146', 'D3338F9B9A0D4550B840A353B06D6222','3FFDA3DEAFB4426CA9A52E22C4D7A165','4F6C6F9DB94A44B882F2570FA28887CE']
2018-11-30 16:38:08 sql 执行时间:21ms
插入行数:0
|
|