SQL 데이터베이스에서 쿼리를 검색하는 데 문제가 있습니다. 나는 수치스러운 일들을 에 추가하여 데이터베이스에을 추가 할 수는 있지만 그 반대의 경우에는 지나치게 많은 양의 어려움을 겪고 있습니다. 순서대로 세 가지 :SQL Datetime을 Java 응용 프로그램에 제대로 다시 가져 오려면 어떻게해야합니까?
는 SQL 테이블 자체 :
CREATE TABLE patientInstructions (
id INT UNSIGNED AUTO_INCREMENT,
lastUpdated datetime NOT NULL,
PatientID BIGINT UNSIGNED NOT NULL,
HCPID BIGINT UNSIGNED NOT NULL,
OVid BIGINT UNSIGNED NOT NULL,
urlLink VARCHAR(250) NOT NULL,
linkInstructions VARCHAR(500) NOT NULL,
linkName VARCHAR(100) NOT NULL,
PRIMARY KEY (id)
) AUTO_INCREMENT=1 ENGINE=MyISAM;
나는 이유는 내가 -1L 대신 데이터베이스에 저장된 실제 데이터 값을 받고 있어요 (실패 메서드 호출,
public String getLastUpdated(long ovID) throws DBException {
try {
return psiDAO.getLastUpdated(ovID);
} catch (myOwnException e) {
e.printStackTrace();
return "-1L";
}
}
을 그리고 마지막으로, 메서드 호출이 실패하는 : 문제가) 처음에이 알고
public String getLastUpdated(long ovId) throws DBException {
Connection conn = null;
PreparedStatement ps = null;
try {
conn = factory.getConnection();
ps = conn.prepareStatement("SELECT * FROM patientInstructions"
+ " WHERE ovId=?");
ps.setLong(1, ovId);
ResultSet rs = ps.executeQuery();
java.util.Date updated = new java.util.Date();
updated = rs.getTime("lastUpdated");
return updated.toString();
} catch (SQLException e) {
e.printStackTrace();
throw new DBException(e);
} finally {
DBUtil.closeConnection(conn, ps);
}
}
SQL Datetime과 일치하는 Java 객체는 무엇입니까? 내가 rs.getTimestamp, rs.getDate 등을 시도했지만 더 이상 성공하지 못했다. 결과 집합의 데이터를 Java 객체로 다시 전송하는 실수를하고 있습니까?
'경우,'다음 라인'null.toString() '실패 할 것입니다 – RichardTheKiwi
스택 트레이스를 보여 주시겠습니까? – RichardTheKiwi
@ 리차드 나중에 참조 할 수 있겠습니까? 또는 아마도 오히려, 어디에서 인쇄 된 것입니까 (저는 Eclipse를 사용하고 있습니다)? –