我找不到我忘记在 Spring 的映射器中使用逗号的地方
I can't find where i forgot to use comma in mapper of Spring
我试图解决根本原因,但找不到问题出在哪里。
控制台说我忘记了逗号,但我不太清楚这是哪里
### SQL: INSERT INTO TEST_MEMBER1 ( MEMBER_ID , MEMBER_PASSWORD , MEMBER_NAME , MEMBER_AGE , MEMBER_ADDR , TO_CHAR(MEMBER_BIRTHDATE, 'YYYY-MM-DD') AS BIRTHDAY_DATE ) VALUES( ? , ? , ? , ? , ? ,? )
### Cause: java.sql.SQLSyntaxErrorException: ORA-00917: 누락된 콤마
; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: ORA-00917: 누락된 콤마
]을(를) 발생시켰습니다.
Error : 917, Position : 128, Sql = INSERT INTO TEST_MEMBER1 (
MEMBER_ID
, MEMBER_PASSWORD
, MEMBER_NAME
, MEMBER_AGE
, MEMBER_ADDR
, TO_CHAR(MEMBER_BIRTHDATE, 'YYYY-MM-DD') AS BIRTHDAY_DATE
)
VALUES(
:1
, :2
, :3
, :4
, :5
,:6
), OriginalSql = INSERT INTO TEST_MEMBER1 (
MEMBER_ID
, MEMBER_PASSWORD
, MEMBER_NAME
, MEMBER_AGE
, MEMBER_ADDR
, TO_CHAR(MEMBER_BIRTHDATE, 'YYYY-MM-DD') AS BIRTHDAY_DATE
)
VALUES(
?
, ?
, ?
, ?
, ?
,?
), Error Msg = ORA-00917: 누락된 콤마
您当前在列列表中有一个 to_char()
函数调用;它应该在 values 子句中:
INSERT INTO TEST_MEMBER1 (
MEMBER_ID
, MEMBER_PASSWORD
, MEMBER_NAME
, MEMBER_AGE
, MEMBER_ADDR
, MEMBER_BIRTHDATE
)
VALUES(
?
, ?
, ?
, ?
, ?
, TO_CHAR(?, 'YYYY-MM-DD')
)
但是这种转换意味着您的 MEMBER_BIRTHDATE
是一个字符串 (VARCHAR2) 列。您应该将数据存储在具有正确数据类型的列中,因此实际上应该是 DATE 列,然后当您绑定日期值时,它不需要转换。
我试图解决根本原因,但找不到问题出在哪里。
控制台说我忘记了逗号,但我不太清楚这是哪里
### SQL: INSERT INTO TEST_MEMBER1 ( MEMBER_ID , MEMBER_PASSWORD , MEMBER_NAME , MEMBER_AGE , MEMBER_ADDR , TO_CHAR(MEMBER_BIRTHDATE, 'YYYY-MM-DD') AS BIRTHDAY_DATE ) VALUES( ? , ? , ? , ? , ? ,? )
### Cause: java.sql.SQLSyntaxErrorException: ORA-00917: 누락된 콤마
; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: ORA-00917: 누락된 콤마
]을(를) 발생시켰습니다.
Error : 917, Position : 128, Sql = INSERT INTO TEST_MEMBER1 (
MEMBER_ID
, MEMBER_PASSWORD
, MEMBER_NAME
, MEMBER_AGE
, MEMBER_ADDR
, TO_CHAR(MEMBER_BIRTHDATE, 'YYYY-MM-DD') AS BIRTHDAY_DATE
)
VALUES(
:1
, :2
, :3
, :4
, :5
,:6
), OriginalSql = INSERT INTO TEST_MEMBER1 (
MEMBER_ID
, MEMBER_PASSWORD
, MEMBER_NAME
, MEMBER_AGE
, MEMBER_ADDR
, TO_CHAR(MEMBER_BIRTHDATE, 'YYYY-MM-DD') AS BIRTHDAY_DATE
)
VALUES(
?
, ?
, ?
, ?
, ?
,?
), Error Msg = ORA-00917: 누락된 콤마
您当前在列列表中有一个 to_char()
函数调用;它应该在 values 子句中:
INSERT INTO TEST_MEMBER1 (
MEMBER_ID
, MEMBER_PASSWORD
, MEMBER_NAME
, MEMBER_AGE
, MEMBER_ADDR
, MEMBER_BIRTHDATE
)
VALUES(
?
, ?
, ?
, ?
, ?
, TO_CHAR(?, 'YYYY-MM-DD')
)
但是这种转换意味着您的 MEMBER_BIRTHDATE
是一个字符串 (VARCHAR2) 列。您应该将数据存储在具有正确数据类型的列中,因此实际上应该是 DATE 列,然后当您绑定日期值时,它不需要转换。