我已阅读所有解决方案,但现在我不知道如何通过 java jdbc 将文件路径保存到 mysql。 这是我的代码:
enter try{
String url= "jdbc:mysql://127.0.0.1:3306/test";
Class.forName("com.mysql.jdbc.Driver").newInstance();
con= DriverManager.getConnection(url,"root","");
System.out.println("ket noi thanh cong");
s = con.createStatement( );
JFileChooser chooser = new JFileChooser();
chooser.showOpenDialog(null);
File f = chooser.getSelectedFile();
fileName = f.getAbsolutePath().toString();
String input = "INSERT INTO imagesrc ( image_src ) VALUES (?);";
PreparedStatement p = con.prepareStatement(input);
p.setString(1, fileName);
System.out.println(p.toString());
p.executeQuery();
}
catch(Exception e){
System.out.println("error");
} here
但是没有运行并且出现错误? 当我通过以下方式打印 SQL 代码时:
System.out.println(p.toString());
将其复制并粘贴到 mysql 中,运行后没有错误? 请帮助我,谢谢
谢谢 salah anh,这是解决方案:
String url= "jdbc:mysql://127.0.0.1:3306/test";
Class.forName("com.mysql.jdbc.Driver").newInstance();
con= DriverManager.getConnection(url,"root","");
System.out.println("ket noi thanh cong");
s = con.createStatement( );
JFileChooser chooser = new JFileChooser();
chooser.showOpenDialog(null);
File f = chooser.getSelectedFile();
fileName = f.getAbsolutePath();
String input = "INSERT INTO imagesrc ( image_src ) VALUES (?)";
PreparedStatement p = con.prepareStatement(input);
p.setString(1, fileName);
// s.executeUpdate(input);
p.executeUpdate();
最佳答案
您将需要使用executeUpdate() 方法来执行INSERT 语句,而您将需要使用executeQuery() 方法来执行SELECT 语句。这是由于 JDBC 规范对其使用提出了要求:
来自 Statement.executeQuery() 的 Java API 文档:
Executes the given SQL statement, which returns a single ResultSet object.
Parameters:
sql - an SQL statement to be sent to the database, typically a static SQL SELECT statement
以及来自 Java API 文档 Statement.executeUpdate() :
Executes the given SQL statement, which may be an INSERT, UPDATE, or DELETE statement or an SQL statement that returns nothing, such as an SQL DDL statement.
Parameters:
sql - an SQL Data Manipulation Language (DML) statement, such as INSERT, UPDATE or DELETE; or an SQL statement that returns nothing, such as a DDL statement.
了解更多details
关于java - 通过java将文件路径保存到mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22280387/