Can I build a Sql query string using String.format

I am new to Java programming. I want to build a SQL query string using String.format. I already use String.formatin C # and it works fine, but not in java

String Query = String.format("insert into authentication(Id,Name,Email,Password,DOB,Gender,Phone,SQ,SA) values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}')", signup.getId(), signup.getName(), signup.getEmail(), signup.getPassword(), signup.getDate_Of_Birth(), signup.getGender(), signup.getPhone(), signup.getSQ(), signup.getSA());

try {
    ps = con.prepareStatement(Query);
    int i = ps.executeUpdate();
} catch (SQLException e) {
    e.printStackTrace();
}

return i;

Here registration is an object of the bean class. But this method does not work, it only saves '{0}', '{1}' ... in the database

The other method I use works fine, but more code than string.format

try {
    ps = con.prepareStatement("insert into authentication Id=?,Name=?,Email=?,Password=?,DOB=?,Gender=?,Phone=?,SQ=?,SA=?,IsVerified=?,IsPay=? ");
    ps.setString(1, signup.getId());
    ps.setString(2, signup.getName());
    ps.setString(3, signup.getEmail());
    ps.setString(4, signup.getPassword());
    ps.setString(5, signup.getDate_Of_Birth());
    ps.setString(6, signup.getGender());
    ps.setString(7, signup.getPhone());
    ps.setString(8, signup.getSQ());
    ps.setString(9, signup.getSA());

    int i = ps.executeUpdate();
} catch (SQLException e) {
    e.printStackTrace();
}

Is it possible to build a SQL query string using String.formatin java?

+5
source share
1 answer

Java. , , , 2 , String. . . java.String.format Scala? , . , . , , C s, . % s , . , ​​ SQL, .

PreparedStatement - Java, SQL JDBC, .

+2

All Articles