How to escape backslashes in MySQL with JDBC?


To escape backslashes, use PreparedStatement while inserting records. Let us first create a table −

mysql> create table DemoTable1904
   (
   ClientId int,
   ClientName varchar(20),
   ClientAge int
   );
Query OK, 0 rows affected (0.00 sec)

The Java code is as follows −

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
public class EscapeBackslashesDemo {
   public static void main(String[] args) {
      Connection con = null;
      PreparedStatement ps = null;
      try {
         con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web?" + "useSSL=false", "root", "123456");
         String query = "insert into DemoTable1904(ClientId,ClientName,ClientAge) values(?,?,?) ";
         ps = con.prepareStatement(query);
         ps.setInt(1, 1001);
         ps.setString(2, "David Miller");
         ps.setInt(3, 35);
         ps.executeUpdate();
         System.out.println("One row is inserted.....");
      } catch (Exception e) {
         e.printStackTrace();
      }
   }
}

This will produce the following output −

Let us check the table records −

mysql> select * from DemoTable1904;

This will produce the following output −

+----------+--------------+-----------+
| ClientId | ClientName   | ClientAge |
+----------+--------------+-----------+
|     1001 | David Miller |        35 |
+----------+--------------+-----------+
1 row in set (0.00 sec)

Updated on: 30-Dec-2019

282 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements