java.sql ?에 해당하는 날짜/시간(java.sql.datetime이 있습니까?)
아직까지는 이에 대한 명확한 답을 찾지 못했습니다.
Prepared Statement를 사용하여 SQL 타입 DATETIME과 Java 타입의 동등성을 알고 싶습니다.
검색 결과: http://www.java2s.com/Code/Java/Database-SQL-JDBC/StandardSQLDataTypeswithTheirJavaEquivalents.htm
그러나 SQL 유형 "DATETIME"은 sql.date와 동일하지만 SQL 날짜 문서(http://download.oracle.com/javase/7/docs/api/java/sql/Date.html),를 보면 시간이 잘렸다고 표시됩니다(모두 0).
내가 원하는 것은, 특정할 수 있는 것.preparedStatement.setDateTime()
뭐 그런 거겠지
다른 방법은 타임스탬프를 사용하는 것뿐입니다만, 이 경우 컬럼 타입을 변경해야 합니다.다른 사람은 이런 문제가 없었던 것 같습니다.
힌트 있나요?
편집: MYSQL을 사용하고 있습니다.
java.sql 패키지에는 다음 세 가지 날짜/시간 유형이 있습니다.
java.sql.Date
- 날짜만 (시간대 제외)java.sql.Time
- 시간만 (날짜 부분 없음)java.sql.Timestamp
- 날짜 및 시간 모두
마지막 하나를 원하십니까?java.sql.Timestamp
.
이러한 타입을 사용하고 있는 경우는, 특정의 설정자를 호출할 필요는 없습니다.단, 다음과 같이 해 주세요.
java.util.Date date = new Date();
Object param = new java.sql.Timestamp(date.getTime());
// The JDBC driver knows what to do with a java.sql type:
preparedStatement.setObject(param);
MS SQL Server 또는 MySQL DATETIME 데이터 유형 또는 Oracle DATE 데이터 유형에 해당하는 데이터는 java.sql입니다.타임스탬프
자바에는 java.util이 있습니다.날짜 및 시간 값을 모두 처리할 날짜입니다.
SQL에는 일반적으로 날짜(날짜만), 시간(시간만) 및 날짜/시간(날짜 및 시간)이 있습니다.
Java 프로그램에서는 보통 항상 java.util을 사용합니다.따라서 Prepared Statements에서 Date/Times/DateTimes를 설정할 때마다 데이터베이스에 따라 항상 필요한 날짜를 정확히 선택하십시오.
내 Mysql에 SQL 날짜가 있고 내 앱에 로컬로 Date만 있는 것과 같은 문제가 있었다.
나는 이렇게 풀었다.
java.sql.Date dataStartSql = new java.sql.Date(start.getTime());
그 후 setDate를 정상적으로 사용하고 getTimestamp를 사용하여 첫 번째 값을 가져옵니다.
여기서 start는 날짜 객체입니다.
언급URL : https://stackoverflow.com/questions/6777810/a-datetime-equivalent-in-java-sql-is-there-a-java-sql-datetime
'programing' 카테고리의 다른 글
mysql과 mysql2 gem의 차이점은 무엇입니까? (0) | 2022.09.25 |
---|---|
개체 키 배열 가져오기 (0) | 2022.09.25 |
MySQL이 허용된 제한보다 짧은 쿼리로 max_allowed_packet 위반에 대해 불만을 제기함 (0) | 2022.09.24 |
nodejs를 사용하여 Inmariadb를 일괄 삽입하는 방법은 무엇입니까? (0) | 2022.09.24 |
PHP에서 어레이 값을 소문자로 변환하는 방법 (0) | 2022.09.24 |