जावा पक्ष में, तिथि को आमतौर पर (खराब डिज़ाइन किया गया है, लेकिन वह अलग है) java.util.Date
. यह मूल रूप से युग काल
द्वारा समर्थित है। long
. के स्वाद में , जिसे टाइमस्टैम्प के रूप में भी जाना जाता है। इसमें दिनांक और समय दोनों भागों के बारे में जानकारी होती है। जावा में, सटीकता मिलीसेकंड में होती है।
SQL साइड में, कई मानक दिनांक और समय प्रकार होते हैं, DATE
, TIME
और TIMESTAMP
(कुछ DB में DATETIME
. भी कहा जाता है ), जिन्हें JDBC में java.sql.Date
, java.sql.Time
कोड>
और java.sql.Timestamp
कोड>
, सभी उपवर्ग java.util.Date
. का . सटीकता DB पर निर्भर है, अक्सर जावा की तरह मिलीसेकंड में, लेकिन यह सेकंड में भी हो सकती है।
java.util.Date
. के विपरीत , java.sql.Date
इसमें केवल दिनांक भाग (वर्ष, माह, दिन) के बारे में जानकारी होती है। TIME
इसमें केवल समय भाग (घंटे, मिनट, सेकंड) और TIMESTAMP
. के बारे में जानकारी होती है दोनों भागों के बारे में जानकारी शामिल है, जैसे java.util.Date
करता है।
डीबी में टाइमस्टैम्प स्टोर करने का सामान्य अभ्यास (इस प्रकार, java.util.Date
जावा पक्ष में और java.sql.Timestamp
JDBC पक्ष में) का उपयोग करना है PreparedStatement#setTimestamp()
।
java.util.Date date = getItSomehow();
Timestamp timestamp = new Timestamp(date.getTime());
preparedStatement = connection.prepareStatement("SELECT * FROM tbl WHERE ts > ?");
preparedStatement.setTimestamp(1, timestamp);
DB से टाइमस्टैम्प प्राप्त करने का सामान्य अभ्यास ResultSet#getTimestamp()
।
Timestamp timestamp = resultSet.getTimestamp("ts");
java.util.Date date = timestamp; // You can just upcast.