我想用Java Netbeans中MySql连接的普通程序将行插入到Mysql数据库中,但当我运行此代码时,我的数据库仍然不受影响。
代码:
import java.sql.*;
public class MySqlConnection {
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/migration";
static final String USER = "root";
static final String PASS = "ngts12345";
public static void main(String[] args) {
Connection conn = null;
try{
Class.forName("com.mysql.jdbc.Driver");
System.out.println("Connecting to a selected database...");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
System.out.println("Connected database successfully...");
System.out.println("Inserting records into the table...");
String sql = "INSERT INTO document (document_id, document_name, format)" +
"VALUES (?, ?, ?)";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setInt(1, 1);
preparedStatement.setString(2, "Test2");
preparedStatement.setString(3, "Test3");
preparedStatement.executeUpdate();
preparedStatement.close();
conn.close();
}catch(SQLException se){
//Handle errors for JDBC
}catch(Exception e){
//Handle errors for Class.forName
}
}
}
发布于 2014-01-21 20:25:12
format)
和values
后面没有空格
将此行更改为
String sql = "INSERT INTO document (document_id, document_name, format)" +
"VALUES (?, ?, ?)";
至
String sql = "INSERT INTO document(document_id, document_name, format) " +
"VALUES (?, ?, ?)";
发布于 2016-02-17 14:28:24
试着这样做:
preparedStatement.executeUpdate(sql);
并且您还应该指定数据库
String sql = "INSERT INTO database_name.document (document_id, document_name, format)" +"VALUES (?, ?, ?)";
发布于 2016-04-05 17:40:29
enter code here
try{
Class.forName("com.mysql.jdbc.Driver"); // MySQL database connection
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306","root","");
String sql = "select * from 'table_name'.database_name where user=? and pass=?";
pst = conn.prepareStatement(sql);
rs= pst.executeQuery();}
https://stackoverflow.com/questions/21257977
复制相似问题