java存取mysql日期型数据总结

2025-10-22 09:15:11

1、在mysql中test数据库中新建一个表:

Create Table

 

CREATE TABLE `riqi` (

 

  `id` int(11) NOT NULL AUTO_INCREMENT,

 

  `riqi` datetime DEFAULT NULL,

 

  PRIMARY KEY (`id`)

 

) ENGINE=InnoDB DEFAULT CHARSET=utf8

java存取mysql日期型数据总结

2、打开riqi表,输入3个数据,1个是“2020-01-01 01:01:01 ”,2个 是null,3个是“0000-00-00 00:00:00”.

java存取mysql日期型数据总结

3、打开eclipse这个工具,新建一个java项目riqi,如果不会mysql数据库的,看一下java连接mysql数据库这个文章。

java存取mysql日期型数据总结

4、在main方法内,连接mysql数据库:

try {

 

            Class.forName("com.mysql.jdbc.Driver");

 

            Connection conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8;","root","123456");

 

            System.err.println(conn);

 

            

 

        } catch (ClassNotFoundException | SQLException e) {

 

        }

java存取mysql日期型数据总结

5、接下来,读取riqi表的数据,首先id=1的数据:看看结果是为2020-01-01 01:01:01

Statement st=conn.createStatement();

 

            ResultSet rs=st.executeQuery("select riqi from riqi where id=1");

 

            while(rs.next()){

 

                System.err.println(rs.getString(1));

 

            }

 

            rs.close();

 

            st.close();

结果正确

java存取mysql日期型数据总结

6、接下来,读取riqi表的数据,首先id=2的数据:看看结果是为null

Statement st=conn.createStatement();

 

            ResultSet rs=st.executeQuery("select riqi from riqi where id=2");

 

            while(rs.next()){

 

                System.err.println(rs.getString(1));

 

            }

 

            rs.close();

 

            st.close();

结果正确

java存取mysql日期型数据总结

7、接下来,读取riqi表的数据,首先id=3的数据:看看结果是为0000-00-00 00:00:00

Statement st=conn.createStatement();

 

            ResultSet rs=st.executeQuery("select riqi from riqi where id=3");

 

            while(rs.next()){

 

                System.err.println(rs.getString(1));

 

            }

 

            rs.close();

 

            st.close();

结果出现错误!Java识别不了“0000-00-00 00:00:00”这个数据!

java存取mysql日期型数据总结

8、Java存储日期型到mysql数据库中,错误的数据mysql会按"0000-00-00 00:00:00"这个数据处理。比如“2020-01-32”数据,在mysql会按"0000-00-00 00:00:00"这个数据处理。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢