SELECT OBJECT(p) FROM users WHERE p.username LIKE '%?1%'

解决方案 »

  1.   

    你的语句有问题。
    select object(a) from TBank as a where a.fName like ?1
    我的这句一点问题都没有,编译正常。
      

  2.   

    To listening(zqy):
    改为:
      SELECT OBJECT(p) FROM users WHERE p.username LIKE '%?1%'部署没问题,但是执行的时候居然有EJBException:
      javax.ejb.EJBException: nested exception is: java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][SQL Server]在关键字 'not' 附近有语法错误。奇怪的是根本没有not关键字啊!
      

  3.   

    有需要J2EE资料的吗?请访问我的网站http://softtrade.vicp.net 资料下载 目录下载资料
    内容:
    精通EJB2
    EJB-CMP-CMR
    J2EE_BlueprintsDigest
    JMS
    jAVA-jms
    ejb资料
    实战EJB
    J2EE and XML
    Enterprise Java Bean
      

  4.   

    真实怕了你了,你觉得那种写法“SELECT OBJECT(p) FROM users WHERE p.username LIKE '%?1%'”对吗? Like后面跟的应该是变量,你家了''不就变成常量了吗?这样写试试。
    select object(p) from users as p where p.username like ?1一定没问题。
      

  5.   

    to zeros(只爱Java),楼主:
    SELECT OBJECT(p) FROM users WHERE p.username LIKE '%?1%'
    是绝对没有问题的,我用CMP,JBuilderX/Oracle9/WebLogic8.12编译成功。
    你出现的问题,可能是里面的空格有问题,你把这一句重新写一遍,不要有全角字符。这是个小问题,EJB_QL有其特别的语法,”好好学习,天天向上“说的没错,到网上可以找到很多这样的资料。全面的学习一下,比解决一个问题更有益处。
      

  6.   

    To zeros(只爱Java): listening(zqy)说得没错,LIKE '%?1%' 是绝对没有问题的,
    你仔细想想:SQL中的LIKE:
      LIKE '%A%', LIKE 'A%', LIKE '%A'
    如果你写LIKE ?1 那么对应的是上面哪个SQL呢?