如何使用java代码向MySQL数据库添加信息

如何使用java代码向MySQL数据库添加信息,java,mysql,Java,Mysql,下面是将信息插入MySQL数据库的代码。它可以正常工作,但不会将信息插入数据库 try { Class.forName("Com.mysql.jdbc.Driver"); Connection connection= DriverManager.getConnection("jdbc:mysql:///mymail","root","toor"); out.print("Connected"); PreparedStatem

下面是将信息插入MySQL数据库的代码。它可以正常工作,但不会将信息插入数据库

    try {
        Class.forName("Com.mysql.jdbc.Driver");
        Connection connection= DriverManager.getConnection("jdbc:mysql:///mymail","root","toor");
        out.print("Connected");
        PreparedStatement ps= connection.prepareStatement("insert into mytable(fname,lname,uname,pass,cpass,month,day,year,Gender,mobile,email,country) values (?,?,?,?,?,?,?,?,?,?,?,?)");
    ps.setString(1, fname);
    ps.setString(2, lname);
    ps.setString(3, uname);
    ps.setString(4, pass);
    ps.setString(5, cpass);
    ps.setString(6, month);
    ps.setString(7, day);
    ps.setString(8, year);
    ps.setString(9, Gender);
    ps.setString(10, mobile);
    ps.setString(11,email);
    ps.setString(12, country);
    ps.executeUpdate();

    } catch (Exception e) 
                        {}

可能是您的连接未处于自动提交模式,因此您必须调用
连接。提交()

在离开该方法之前,必须调用
connection.close()
(在finally块中),否则将泄漏打开的连接


我建议您尝试一个框架,它可以为您节省很多麻烦,比如spring。

如果没有完整的代码和表结构,很难判断是什么导致了问题。尽管我建议您使用插入的值检查列的类型。这可能是造成问题的原因

其次,您为数据库指定的url看起来可疑

最后,确保在类路径中有一个mysql连接器


如果您已经检查了以上几点,我认为您应该很好。

您没有显示全部代码,但我怀疑没有错误是由于在catch语句中默默地吞没了它。我们可以看到代码处理异常吗?如果您没有查看任何异常。。将其添加到catch块
e.printStackTrace()用于查看完整跟踪或
系统输出打印LN(e)用于单独查看异常。。附言:当你问问题时,一定要记得公布你的异常或错误。这将有助于我们更好地回答你的问题。我们不能假定所有可能的错误。。所以,为了得到正确的答案,请发布错误/异常。既没有任何错误,也没有任何异常。它编译成功,但也没有在数据库中插入任何内容。我已经添加了e.printStackTrace();但结果是一样的,在Java7中,是否有必要关闭jdbc连接?我想没有。但是你必须使用try块,谢谢,实际上我没有使用mysql连接器。现在我明白了。