Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

ResultSet.getTimestamp (date) so với ResultSet.getTimestamp (date, Calendar.getInstance (tz))

Đầu tiên, bạn đang nhầm lẫn java.util với java.sql . Khi sử dụng PreparedStatement # setDate () ResultSet # getDate () , bạn cần java.sql.Date . Tương tự, khi sử dụng PreparedStatement # setTimestamp () ResultSet # getTimestamp () bạn cần java.sql.Timestamp .

Thứ hai, điều quan trọng là phải hiểu rằng java.sql.Date chỉ đại diện cho ngày (năm, tháng, ngày) và không ít hơn hoặc nhiều hơn. Điều này sẽ được ánh xạ tới một SQL DATE Loại lĩnh vực. java.sql.Timestamp đại diện cho dấu thời gian (năm, tháng, ngày, giờ, phút, giây, mili giây), chính xác như java.util.Date java.util.Calendar làm. Điều này sẽ được ánh xạ tới một TIMESTAMP trong SQL hoặc DATETIME loại trường.

Đối với múi giờ, bạn cần nó khi cơ sở dữ liệu không lưu trữ thông tin múi giờ (do đó, tất cả các dấu thời gian được lưu trữ theo UTC (GMT)). Sau đó, bạn có thể chuyển Lịch trong đó chứa thông tin về múi giờ hiện tại, để trình điều khiển JDBC có thể điều chỉnh dấu thời gian UTC thành dấu thời gian phù hợp với múi giờ. Nếu đó là ví dụ như GMT + 1, thì trình điều khiển JDBC sẽ thêm một giờ vào dấu thời gian trước khi quay trở lại.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. làm thế nào để sửa đổi một ràng buộc kiểm tra hiện có?

  2. ORA-00907 khi cố gắng tạo ràng buộc KIỂM TRA

  3. Nhận danh sách các số ở giữa hai cột bằng khóa

  4. SQL mã định danh không hợp lệ

  5. Cách sửa lỗi oracle.sql.ArrayDescriptor, oracle.sql.THER và oracle.sql.StructDescriptor không dùng nữa