반응형
Mysql 데이터베이스와 함께 Hibernate JPA 및 Spring을 사용하고 있으며 다음과 같은 SQL 문을 사용하여 삽입하고 싶습니다.
Date saveDate = new Date();
java.sql.Timestamp timeStampDate = new Timestamp(saveDate.getTime());
Query persistableQuery = entityManager.createNativeQuery("INSERT INTO TASK_ASSESSMENT (ACTIVE_FLAG, ASSESSMENT_DATE, DESCRIPTION, "
+ "TITLE, NEEDS_LEVEL_ID, PATIENT_ID, USER_ID) VALUES ("
+ true +", " + timeStampDate + ", " + description + ", " + title + ", "
+ needsLevelId + ", " + patientId + ", " + userId + " )");
persistableQuery.executeUpdate();
하지만 실행 후 다음 오류가 발생합니다.
WARN : org.hibernate.util.JDBCExceptionReporter - SQL Error: -11, SQLState: 37000
ERROR: org.hibernate.util.JDBCExceptionReporter - Unexpected token: 15 in statement
[INSERT INTO TASK_ASSESSMENT (ACTIVE_FLAG, ASSESSMENT_DATE, DESCRIPTION, TITLE,
NEEDS_LEVEL_ID, PATIENT_ID, USER_ID)
VALUES (true, 2011-03-01 15?, any description, , 193, 1, 3 )]
누군가 제발 도와 주시겠습니까?
추신. 네이티브가 아닌 방식으로 최대 절전 모드를 사용하는 것을 알고 있지만 네이티브 방식을 사용해야합니다. 나는 또한 삽입 ... from ...이지만 그것이 도움이 될 것이라고 생각하지 않습니다.
마지막으로 문제는 주로 날짜에 있다고 생각합니다. Java를 사용하여 MySQL에서 datetime
유형을 어떻게 전달합니까?
업데이트 :
다음은 잘 작동하며 mysql datetime 변환 문제에 대한 Java 날짜라고 생각합니다.
("INSERT INTO TASK_ASSESSMENT "
+ "(ACTIVE_FLAG, ASSESSMENT_DATE, DESCRIPTION, TITLE, "
+ "NEEDS_LEVEL_ID, PATIENT_ID, USER_ID) "
+ "VALUES (true, 1999-12-22, '" + description + "', '"
+ title + "', " + needsLevelId+", " + patientId
+ ", " + userId + ")");
누구든지 java.util.Date
를 MySQL datetime
으로 변환하는 방법에 대해 저를 도울 수 있습니까?
해결 방법
연결을 사용하여 쿼리에 데이터를 삽입하지 말고 대신 매개 변수를 사용하세요. 값의 잘못된 표현과 다른 많은 문제를 해결합니다.
entityManager.createNativeQuery(
"INSERT INTO TASK_ASSESSMENT (ACTIVE_FLAG, ASSESSMENT_DATE, DESCRIPTION, "
+ "TITLE, NEEDS_LEVEL_ID, PATIENT_ID, USER_ID) VALUES (?, ?, ?, ?, ?, ?, ?)")
.setParameter(1, true)
.setParameter(2, saveDate, TemporalType.TIMESTAMP) // Since you want it to be a TIMESTAMP
.setParameter(3, description)
.setParameter(4, title)
.setParameter(5, needsLevelId)
.setParameter(6, patientId)
.setParameter(7, userId)
.executeUpdate();
참조 페이지 https://stackoverflow.com/questions/5157051
반응형
'MySql' 카테고리의 다른 글
MySQL 3- 테이블 Natural Join은 어떻게하나요? (0) | 2020.10.16 |
---|---|
MySQL How do I check if PHP is connected to a database already? (0) | 2020.10.16 |
MySQL PHP 변수의 mysql 쿼리 결과 (0) | 2020.10.15 |
MySQL 두 테이블에서 고유 한 값 선택 (0) | 2020.10.15 |
MySQL C # MySql 쿼리 결과를 콤보 상자로 (0) | 2020.10.15 |
댓글