用Statement执行数据库语句比较麻烦。
例如,向数据库中插入整型, 字符串等数据。
String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String connectDB="jdbc:sqlserver://ABYSS-PC\\MYABYSS:64160;DatabaseName=master";
//实例化驱动
Class.forName(JDriver);
String user ="sa";
String possword = "";
//连接数据库
Connection conn = DriverManager.getConnection(connectDB, user, possword);
//创建语句对象
Statement stmt = conn.createStatement();
int Number = 189;
String City = "北京";
String Job = "服务业";
String sql = "insert into dept2 values (" +Number+",'" + City +"','"+ Job+"')";
stmt.executeUpdate(sql);
在sql变量中又是单引号 又是逗号的很麻烦,而且一不小心容易写错。
换成preparedStatement就简单许多了
String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String connectDB="jdbc:sqlserver://ABYSS-PC\\MYABYSS:64160;DatabaseName=master";
//实例化驱动
Class.forName(JDriver);
String user ="sa";
String possword = "";
//连接数据库
Connection conn = DriverManager.getConnection(connectDB, user, possword);
//创建语句对象
int Number = 189;
String City = "北京";
String Job = "服务业";
PreparedStatement pstmt = conn.prepareStatement( "insert into dept2 values (?, ?, ?)");
pstmt.setInt(1, Number);
pstmt.setString(2, City);
pstmt.setString(3, Job);
pstmt.executeUpdate();