2016-09-17 55 views
-1

我必须将数据插入数据库。因为sql语句VALUES(......)有8个参数。使用插入语句是否精通?插入到具有大量参数的数据库中

Class UserRegistration { 
public void insertToDatabase(){ 
     String sql=" INSERT INTO db1(......) Values(id,fname,lastname,username,password,usertype,email,contact,address)" 
} 


} 
+2

是的。 INSERT是将行插入数据库的典型方式。 –

+0

如果你规范化你的数据库,至少要等到第三个正常表单,会更好。但是你可以插入8个或更多的参数。 – TimeToCode

+1

您是否在使用'INSERT'的当前实现中发现了任何缺陷?我不这么认为 –

回答

5

做到这一点在Java中,假设你使用JDBC的正确方法,是使用PreparedStatement

String sql = "INSERT INTO db1" + 
      " (id,fname,lastname,username,password,usertype,email,contact,address)" + 
      " VALUES (?,?,?,?,?,?,?,?,?)"; 
try (PreparedStatement stmt = conn.prepareStatement(sql)) { 
    stmt.setInt (1, id); 
    stmt.setString(2, fname); 
    stmt.setString(3, lastname); 
    stmt.setString(4, username); 
    stmt.setString(5, password); 
    stmt.setString(6, usertype); 
    stmt.setString(7, email); 
    stmt.setString(8, contact); 
    stmt.setString(9, address); 
    stmt.executeUpdate(); 
}