有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Mybatis ORA00911:无效字符

错误信息如下所示

映射器/管理员映射器中可能存在此错误。xml
该错误可能涉及defaultParameterMap
设置参数时出错
原因:java。sql。SQLSyntaxErrorException:ORA-00911:无效字符;糟糕的SQL语法[];嵌套的例外是java。sql。SQLSyntaxErrorException:ORA-00911:具有根本原因的无效字符] JAVAsql。SQLSyntaxErrorException:ORA-00911:无效字符

    <select id="selectCouponByDate" parameterType="String" resultType="Coupon">
    CREATE OR REPLACE VIEW CPN_EXPIRED
    AS SELECT COUNT(COUPON_NAME) AS EXPIRED, COUPON_NAME
         FROM COUPON
        WHERE EXPDATE <![CDATA[<]]> SYSDATE
          AND ISUSED = 'N'
     GROUP BY COUPON_NAME;

    CREATE OR REPLACE VIEW CPN_USED
    AS SELECT COUNT(COUPON_NAME) AS USED, COUPON_NAME
         FROM COUPON
        WHERE ISUSED = 'Y'
     GROUP BY COUPON_NAME;
     
       SELECT C.COUPON_NAME
            , ISSUEDBY
            , LIMIT
            , COUNT(C.COUPON_NAME) AS ISSUED, EXPIRED, USED
         FROM COUPON C
    LEFT JOIN CPN_EXPIRED V1 ON(C.COUPON_NAME = V1.COUPON_NAME)
    LEFT JOIN CPN_USED V2 ON(C.COUPON_NAME = V2.COUPON_NAME)
    <choose>
        <when test="date == day">WHERE TO_DATE(SYSDATE,'yy-mm-dd') - TO_DATE(ISSUEDATE, 'yy-mm-dd') = 0</when>
        <when test="date == week">WHERE ISSUEDATE <![CDATA[>=]]> TRUNC(SYSDATE, 'IW')
                                  AND ISSUEDATE <![CDATA[<]]> TRUNC(SYSDATE, 'IW') + 7</when>
        <otherwise>WHERE ISSUEDATE <![CDATA[>=]]> TRUNC(SYSDATE, 'MM')
                   AND ISSUEDATE <![CDATA[<]]> LAST_DAY(SYSDATE)</otherwise>
    </choose>
     GROUP BY C.COUPON_NAME, ISSUEDBY, LIMIT, EXPIRED, USED;
</select>

我找不到任何打字错误


共 (0) 个答案