আপনি তারিখ ডেটাটাইপ ব্যবহার করে এসকিউএল-এ তারিখের মান সন্নিবেশ করতে পারেন, java.sql.Date ক্লাস ম্যাপ SQL DATE প্রকারে।
প্রস্তুত বিবৃতি ইন্টারফেস setDate() নামে একটি পদ্ধতি প্রদান করে . এটি ব্যবহার করে আপনি একটি টেবিলে তারিখ সন্নিবেশ করতে পারেন। এই পদ্ধতি দুটি পরামিতি গ্রহণ করে −
-
একটি পূর্ণসংখ্যা যা স্থানধারকের (?) প্যারামিটার সূচককে প্রতিনিধিত্ব করে যার জন্য আমাদের তারিখের মান সেট করতে হবে।
-
একটি তারিখ অবজেক্ট যা পাস করার তারিখের মান উপস্থাপন করে। java.sql.Date ক্লাসের কনস্ট্রাক্টর যুগ থেকে মিলিসেকেন্ডের সংখ্যার প্রতিনিধিত্বকারী দীর্ঘ প্রকারের একটি পরিবর্তনশীল গ্রহণ করে (স্ট্যান্ডার্ড বেস টাইম অর্থাৎ জানুয়ারী 1, 1970, 00:00:00 GMT)।
উদাহরণ
অনুমান করুন আমরা নিম্নলিখিত বর্ণনা সহ MySQL ডাটাবেসে Emp নামে একটি টেবিল তৈরি করেছি -
+----------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+--------------+------+-----+---------+-------+ | Name | varchar(255) | YES | | NULL | | | DOB | date | YES | | NULL | | | Location | varchar(255) | YES | | NULL | | +----------+--------------+------+-----+---------+-------+
JDBC প্রোগ্রাম অনুসরণ করে এই টেবিলে রেকর্ড সন্নিবেশ করায় -
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.Statement; import java.sql.Date; public class InsertingDate { public static void main(String args[])throws Exception { //Getting the connection String mysqlUrl = "jdbc:mysql://localhost/sampleDB"; Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); System.out.println("Connection established......"); //Inserting values to a table String query = "INSERT INTO Emp(Name, DOB, Location) VALUES (?, ?, ?)"; PreparedStatement pstmt = con.prepareStatement(query); pstmt.setString(1, "Amit"); pstmt.setDate(2, new Date(622790105000L)); pstmt.setString(3, "Hyderabad"); pstmt.execute(); pstmt.setString(1, "Sumith"); pstmt.setDate(2, new Date(620611200000L)); pstmt.setString(3, "Vishakhapatnam"); pstmt.execute(); pstmt.setString(1, "Sudha"); pstmt.setDate(2, new Date(336614400000L)); pstmt.setString(3, "Vijayawada"); pstmt.execute(); System.out.println("Records inserted......"); } }
আউটপুট
Connection established...... Records inserted......
আপনি যদি MySQL ডাটাবেসে টেবিলটি যাচাই করেন, তাহলে আপনি টেবিলের বিষয়বস্তুগুলি −
হিসাবে পর্যবেক্ষণ করতে পারেনmysql> select * from Emp; +--------+------------+----------------+ | Name | DOB | Location | +--------+------------+----------------+ | Amit | 1989-09-26 | Hyderabad | | Sumith | 2019-03-19 | Vishakhapatnam | | Sudha | 2019-03-19 | Vijayawada | +--------+------------+----------------+ 3 rows in set (0.00 sec)