找回密码
 注册成为天翎用户
查看: 1192|回复: 4

关于程序queryBySql 方法是用问题

[复制链接]
zel1668 发表于 2012-3-6 14:27:44 | 显示全部楼层 |阅读模式
本帖最后由 purple 于 2012-3-7 17:59 编辑

我 在 java程序 action 里面 写了一个sql 语句,用系统自带的 queryBySql方法查询,报如下错误:
  1. 14:21:11,741  INFO AbstractDocStaticTblDAO:1215 - MY SQL:  SELECT * FROM (select item_请假人,item_开始时间,item_结束时间  from tlk_leave_apply where item_开始时间    between '2012-01-01 9:00:00' and  '2012-02-01 17:30:00' or  item_结束时间   between '2012-01-01 9:00:00' and  '2012-02-01 17:30:00') table_0 WHERE table_0.DOMAINID ='11e1-5090-28590227-bea7-f957d4e97539'
  2. com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'table_0.DOMAINID' in 'where clause'
  3.         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  4.         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
  5.         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
  6.         at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
复制代码
我是这样写的
  1. sql ="select * from tlk_calendar t " +
  2. "where t.item_date between '"+bean.getStartTime()+"'  and  '"+bean.getEndTime()+"' " +
  3. "and t.item_weekno !='星期天' and t.item_weekno !='星期六'  " +
  4. "and t.item_holidaystate ='否'";
复制代码
程序
  1. public Collection<Document> getQueryBySql(String applicationId,String domainid,String sql){
  2.            ////查询数据库
  3.                         DocumentProcess c;
  4.                         Collection<Document> list = null;
  5.                         try {
  6.                                 c = DocumentProcessBean.createMonitoProcess(applicationId);
  7.                                 list = c.queryBySQL(sql, domainid).getDatas();
  8.                         } catch (Exception e1) {
  9.                                 e1.printStackTrace();
  10.                         }
  11.                         return list;
  12.         }
复制代码
table_0.DOMAINID 错误是怎么回事
irene 发表于 2012-3-6 14:34:38 | 显示全部楼层
您好,请问您有数据库客户端吗?如果有,您先试试在数据库客户端您的sql语句能不能查询出记录
回复

使用道具 举报

 楼主| zel1668 发表于 2012-3-6 14:37:29 | 显示全部楼层
不能查询,sql语句 我放进去是这样的
select item_请假人,item_开始时间,item_结束时间  from tlk_leave_apply where item_开始时间    between '2012-01-01 9:00:00' and  '2012-02-01 17:30:00' or  item_结束时间   between '2012-01-01 9:00:00' and  '2012-02-01 17:30:00'

但是进去以后就变成这样了
SELECT * FROM (select item_请假人,item_开始时间,item_结束时间  from tlk_leave_apply where item_开始时间    between '2012-01-01 9:00:00' and  '2012-02-01 17:30:00' or  item_结束时间   between '2012-01-01 9:00:00' and  '2012-02-01 17:30:00') table_0 WHERE table_0.DOMAINID ='11e1-5090-28590227-bea7-f957d4e97539'
回复

使用道具 举报

irene 发表于 2012-3-6 15:37:05 | 显示全部楼层
您好,我在本机测试了,我用您的sql语句测试了,是有记录返回的,可能我们两个人的操纵步骤不一致,方便很您远程,确认一下您的操作步骤吗?我的QQ:2676466983
回复

使用道具 举报

云南腾俊 发表于 2012-6-25 21:06:20 | 显示全部楼层
你的sql的select字段列表里面带上DOMAINID 就好了
回复

使用道具 举报

本版积分规则

手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-13 18:46

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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