guhe10
2009-12-03 10:41
浏览 238
已采纳

sql 语句

Hibernate:
select
tbgroups0_.id as id5_,
tbgroups0_.name as name5_,
tbgroups0_.description as descript3_5_,
tbgroups0_.status as status5_,
tbgroups0_.note as note5_,
tbgroups0_.group_ou as group6_5_
from
odss.tb_groups tbgroups0_
where
(
tbgroups0_.name=3453dd192
)
order by
tbgroups0_.id desc
[WARN,JDBCExceptionReporter,http-8080-4] SQL Error: 1054, SQLState: 42S22
[ERROR,JDBCExceptionReporter,http-8080-4] Unknown column '3453dd192' in 'where clause'
2009-12-3 10:22:56 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet dispatherContext threw exception
java.sql.SQLException: Unknown column '3453dd192' in 'where clause'

很郁闷 比如 name属性值全 数字能 查到 一换带 字母的 就不行 莫名奇妙了 。。。。。
sql 语句 是直接用 string拼起来的 没用占位符 有关系吗?
帮忙看看 谢谢
[b]问题补充:[/b]
Hibernate:
select
tbgroups0_.id as id5_,
tbgroups0_.name as name5_,
tbgroups0_.description as descript3_5_,
tbgroups0_.status as status5_,
tbgroups0_.note as note5_,
tbgroups0_.group_ou as group6_5_
from
odss.tb_groups tbgroups0_
where
(
tbgroups0_.name=197
)
order by
tbgroups0_.id desc

解析的这条是没错的 不是粗心啊 您再看看 就 值 197 数字改了一下 带了字母 查不到没什么 报错就不对了啊 谢谢 各位帮忙看看

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • CaiHuajiang 2009-12-03 10:50
    已采纳

    tbgroups0_.name='3453dd192',粗心

    点赞 打赏 评论
  • CaiHuajiang 2009-12-03 11:16

    怎么不理解呢???
    3453dd192这个可不是数字啊,,数字类型不用引号,难道字符类型也不用引号了?
    很简单呀,将数字用当字符处理就得了,反之,将字符类型当数字处理就会报错了。

    点赞 打赏 评论
  • zhyleazhong 2009-12-03 11:32

    看看你的数据库里面name的字段是不是String型的(varchar)如果是的建议添加‘’,这样应该可以解决。
    赞同楼上观点,仔细看看吧

    点赞 打赏 评论
  • wanghaolovezlq 2009-12-03 11:53

    这个3453dd192是字符串嘛,你当然要写成'3453dd192'

    点赞 打赏 评论

相关推荐 更多相似问题