java - 如何将文件路径保存到sql数据库

标签 java mysql netbeans

我正在开发一个应用程序,我必须从该应用程序中打开文档。我必须将文件的路径保存到sql数据库。 sql中插入文件路径的列的类型为VARCHAR(255)。

如果文件的路径是 C:\Users\UPS21120\Downloads\doc1.pdf ,则将其保存在数据库中为 C:UsersUPS21120Downloadsdoc1.pdf (保存路径中的反斜杠在哪里?)。

当我检索此路径以打开文件doc1.pdf时,我收到一个异常,表明 doc1 不存在。以下是我用来保存路径的代码。请帮忙。

      JFileChooser fc = new JFileChooser(); 
      returnVal = fc.showOpenDialog(view_doc.this);
      File file1=fc.getSelectedFile();

      if (returnVal == JFileChooser.APPROVE_OPTION) {
      String str = "INSERT INTO document(doc_path) VALUES ('"+file+"')";
                  // open connection..execute query etc--works fine

      }

最佳答案

在将要插入的值插入数据库之前,您必须对其进行转义。或者您可以使用准备好的语句来为您做到这一点。

另请参阅:Java - escape string to prevent SQL injection

关于java - 如何将文件路径保存到sql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14768437/

相关文章:

mysql - MySQL中的INDEX和VIEW有什么区别

php - CakePHP 3.8.6 : Authorization failure when adding new content

Netbeans 和 Mercurial - 使用自签名证书从服务器克隆存储库

java - 使用相同的字符串文字而不是最终变量有什么好处?

java - 使用 uri 将文件读取到字节数组

java - 让我了解这个线程同步失败

java - 是否可以从 PIT 覆盖范围计算中排除方法?

mysql - 需要有关 SQL 查询的帮助

eclipse - 我可以使用eclipse编写j2me代码吗?

java - 属性 hibernate.connection.driver_class 2 未指定 JDBC 驱动程序类