起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8736|回复: 17

[处理中3] ksql.select能正确的执行sql,但是取不json对象

[复制链接]

99

主题

329

帖子

568

积分

高级会员

Rank: 4

积分
568
QQ
发表于 2018-7-31 14:44:31 | 显示全部楼层 |阅读模式
本帖最后由 zyygod 于 2018-7-31 14:47 编辑
  1. public static JSONObject getQjxx(String CJR){
  2.                 String ksql = "Select a.* from QXJJBXXB a where a.PERSON_ID ='" + CJR + "'";
  3.                 System.out.println(ksql);
  4.                 Table table = KSQL.select(ksql, null, "/app/dataSource/oa_ywk/data", null);
  5.                 Iterator<Row> rows = table.iterator();
  6.                 JSONObject result = new JSONObject();
  7.                 while (rows.hasNext()) {
  8.                         Row row = rows.next();
  9.                         System.out.println(row);
  10.                         System.out.println("QXJJBXXB--------->" + row.getString("NAME"));
  11.                         result.put("sActivityName", row.getString("sActivityName"));
  12.                         result.put("STATUS", row.getInteger("STATUS"));
  13.                         result.put("DEP_IN", row.getString("DEP_IN"));
  14.                         result.put("TYPE", row.getInteger("TYPE"));
  15.                         result.put("NAME", row.getString("NAME"));
  16.                         result.put("BEGIN_TIME", row.getDate("BEGIN_TIME"));
  17.                         result.put("END_TIME_PLAN", row.getDate("END_TIME_PLAN"));
  18.                         result.put("DAYS_PLAN", row.getInteger("DAYS_PLAN"));
  19.                         result.put("END_TIME", row.getDate("END_TIME"));
  20.                         result.put("REAL_DAYS", row.getInteger("REAL_DAYS"));
  21.                 }
  22.                 return result;
  23.         }
复制代码
控制台信息如下:Select a.* from QXJJBXXB a where a.PERSON_ID ='tPFCbyn6wapmmNUt8Rh'。row的值是空的,但是根据数据库sql查询到的是有值的。

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-31 15:08:32 | 显示全部楼层
参考http://bbs.wex5.com/forum.php?mo ... 6&pid=165049439把table的内容输出看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

99

主题

329

帖子

568

积分

高级会员

Rank: 4

积分
568
QQ
 楼主| 发表于 2018-7-31 15:38:43 | 显示全部楼层
本帖最后由 zyygod 于 2018-7-31 16:50 编辑

我执行select之后,直接返回table到前台,console出来table里面的row是空的,没查到,控制台没有报错,我把控制台的sql语句拿到数据库里面执行,是有一条数据的,这是什么原因???? 1.png
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-31 16:52:32 | 显示全部楼层
参考2楼的在后端输出table的内容看一下啊
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

99

主题

329

帖子

568

积分

高级会员

Rank: 4

积分
568
QQ
 楼主| 发表于 2018-7-31 16:55:13 | 显示全部楼层
本帖最后由 zyygod 于 2018-7-31 16:57 编辑
jishuang 发表于 2018-7-31 16:52
参考2楼的在后端输出table的内容看一下啊
  1. <rows><userdata name="model">/app/dataSource/oa_ywk/data</userdata><userdata name="userdata">whereVersion</userdata><userdata name="relations">QXJJBXXB,QXJJBXXB.DEP_ID,QXJJBXXB.PERSON_ID,QXJJBXXB.NAME,QXJJBXXB.SEX,QXJJBXXB.POST,QXJJBXXB.QJJB,QXJJBXXB.TYPE,QXJJBXXB.BEGIN_TIME,QXJJBXXB.END_TIME_PLAN,QXJJBXXB.DAYS_PLAN,QXJJBXXB.WORK_AGE,QXJJBXXB.ANNUAL_DAYS,QXJJBXXB.COMPLETED_DAYS,QXJJBXXB.REMAINDER,QXJJBXXB.PERSONAL,QXJJBXXB.SICK,QXJJBXXB.MARRY,QXJJBXXB.MATERNITY,QXJJBXXB.FAMILY,QXJJBXXB.REASON,QXJJBXXB.APPLY_TIME,QXJJBXXB.END_TIME,QXJJBXXB.REAL_DAYS,QXJJBXXB.STATUS,QXJJBXXB.REMARK,QXJJBXXB.SIGN,QXJJBXXB.VACATION,QXJJBXXB.BZ1,QXJJBXXB.BZ2,QXJJBXXB.BZ3,QXJJBXXB.BZ4,QXJJBXXB.BZ5,QXJJBXXB.YWH</userdata><userdata name="relation-types">String,String,String,String,String,String,String,Integer,Date,Date,Integer,Integer,Integer,Integer,Integer,String,String,String,String,String,String,Date,Date,Integer,Integer,String,String,String,String,String,String,String,String,String</userdata><userdata name="relation-alias">a,DEP_ID,PERSON_ID,NAME,SEX,POST,QJJB,TYPE,BEGIN_TIME,END_TIME_PLAN,DAYS_PLAN,WORK_AGE,ANNUAL_DAYS,COMPLETED_DAYS,REMAINDER,PERSONAL,SICK,MARRY,MATERNITY,FAMILY,REASON,APPLY_TIME,END_TIME,REAL_DAYS,STATUS,REMARK,SIGN,VACATION,BZ1,BZ2,BZ3,BZ4,BZ5,YWH</userdata></rows>
复制代码
回复 支持 反对

使用道具 举报

99

主题

329

帖子

568

积分

高级会员

Rank: 4

积分
568
QQ
 楼主| 发表于 2018-7-31 16:58:41 | 显示全部楼层
jishuang 发表于 2018-7-31 16:52
参考2楼的在后端输出table的内容看一下啊

这个就是我上面贴的userdata里面的属性跟值。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-31 17:07:10 | 显示全部楼层
里面没有,那就是没有返回数据
把平台执行的sql打出来看看

http://bbs.wex5.com/forum.php?mo ... 4&pid=165004035
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

99

主题

329

帖子

568

积分

高级会员

Rank: 4

积分
568
QQ
 楼主| 发表于 2018-7-31 17:15:36 | 显示全部楼层
jishuang 发表于 2018-7-31 17:07
里面没有,那就是没有返回数据
把平台执行的sql打出来看看

sql我在发帖的时候就贴上了,在数据库里面验证这个sql是正确的,而且是有一条数据的。
回复 支持 反对

使用道具 举报

99

主题

329

帖子

568

积分

高级会员

Rank: 4

积分
568
QQ
 楼主| 发表于 2018-7-31 17:18:26 | 显示全部楼层
jishuang 发表于 2018-7-31 17:07
里面没有,那就是没有返回数据
把平台执行的sql打出来看看
  1.                 String ksql = "Select a.* from QXJJBXXB a where a.NAME ='" + CJRNAME + "'";
  2.                 System.out.println(ksql);
  3.                 Table table = KSQL.select(ksql, null, "/app/dataSource/oa_ywk/data", null);
  4.                 System.out.println(new com.justep.system.transform.Table2Row().transform(table,null).asXML());
  5. return table;
复制代码
就这几行代码
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-31 17:23:12 | 显示全部楼层
看平台运行ksql最终执行的sql
不是看你自己拼的sql到数据库中查的

看7楼的配置
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-8-24 10:35 , Processed in 0.057845 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表