将数据插入mysql数据库 - java eclipse

时间:2017-11-08 09:53:17

标签: java mysql eclipse

我有这个代码将数据插入mysql数据库,当我在eclipse上运行以下代码时,它没有显示任何错误,但没有数据插入到数据库中。 这是我的代码。

public static void main (String[] args) { 

    try { 
        Class.forName("com.mysql.jdbc.Driver");
        String url = "jdbc:mysql://localhost:3306/database_spie"; 
        Connection conn = DriverManager.getConnection(url,"root","lecci"); 
        Statement st = conn.createStatement();
        st = conn.prepareStatement("INSERT INTO database_spie.notifiche(titolo, destinatario, testo) \r\n" + 
                "VALUES ('inizio', 'tutti', 'spie per una notte inizia tra 30 minuti');");
        conn.close();
        System.out.println("closed");
    } catch (Exception e) { 
        System.err.println("Got an exception! "); 
        System.err.println(e.getMessage()); 
    } 

}

2 个答案:

答案 0 :(得分:0)

您尚未执行该语句,只是创建了它然后关闭了连接。

PreparedStatement对象上有一个execute()方法。

答案 1 :(得分:0)

首先,您需要使用PreparedStatement而不是Statement。

您只创建了连接,创建了查询,然后关闭了连接

PreparedStatement    st = conn.prepareStatement("INSERT INTO database_spie.notifiche(titolo, destinatario, testo) \r\n" + 
                "VALUES ('inizio', 'tutti', 'spie per una notte inizia tra 30 minuti');");

//在关闭连接之前,您需要使用以下代码行

执行它
 st.executeUpdate();
        conn.close();

您应该按照以下步骤操作:来源(https://alvinalexander.com/java/java-mysql-update-query-example

  • 创建与MySQL数据库的Java连接。
  • 使用Java PreparedStatement语法创建SQL UPDATE语句。
  • 设置字段 我们的Java PreparedStatement对象
  • 执行Java PreparedStatement
  • 关闭我们的Java数据库连接。抓住任何可能的例外情况 在这个过程中出现

如果您使用的是Statement,则需要执行以下操作

Statement stmt=con.createStatement();  

//pass the query string to it
stmt.executeUpdate("INSERT INTO database_spie.notifiche(titolo, destinatario, testo) \r\n" + 
                    "VALUES ('inizio', 'tutti', 'spie per una notte inizia tra 30 minuti');");