1.下载JDBC并导入Eclipse
下载地址:http://www.codedocs.net/maven2/mysql/mysql-connector-java/5.1.9
我的mysql版本5.6.41,JDBC是 mysql-connector-java-5.1.9.jar
在Eclipse中,选择 项目->属性->Java构建路径,在“库”选项卡中,选择“添加外部JAR”,找到下载的mysql-connector-java-5.1.19-bin.jar文件,将其添加进项目。
2.重要代码
1 package tcs; 2 3 import java.sql.*; 4 5 public class tcs { 6 public static void main(String[] arg){ 7 Connection conn; 8 PreparedStatement stmt; 9 String driver = "com.mysql.jdbc.Driver"; 10 String url = "jdbc:mysql://localhost:3306/tcs_db"; 11 String user = "root"; 12 String password = "admin"; 13 String sql = "insert into tcs_tbl(redTime,greenTime) values (1,2)"; 14 15 try { 16 // 注册 JDBC 驱动 17 Class.forName(driver); 18 19 // 打开链接 20 System.out.println("连接数据库..."); 21 conn = DriverManager.getConnection(url, user, password); 22 23 // 执行sql 24 System.out.println(" 执行sql..."); 25 stmt = (PreparedStatement) conn.prepareStatement(sql); 26 //stmt.setString(1, "redTime"); 27 //stmt.setString(2, "greenTime"); 28 //stmt.setInt(3, 1); 29 //stmt.setInt(4, 2); 30 stmt.executeUpdate(); 31 32 } catch (ClassNotFoundException e) { 33 // TODO 自动生成的 catch 块 34 e.printStackTrace(); 35 } catch (SQLException e) { 36 // TODO 自动生成的 catch 块 37 e.printStackTrace(); 38 } 39 40 } 41 42 }
注:
1.因为执行stmt.setInt()以及stmt.setString()时出错了,这里就先把这四行注释了,若保留则
“String sql = "insert into tcs_tbl(redTime,greenTime) values (1,2)";”
可写成“String sql = "insert into tcs_tbl(?,?) values (?,?)";”
2.PreparedStatement是Statement的子接口,可以传入带占位符的SQL语句,提供了补充占位符变量的方法
3使用PreparedStatement的优点:
1).提高代码的可读性和可维护性;
2).最大程度的提高性能:如果SQL语句被多次执行选用PreparedStatement是最好的;
3).可以防止SQL注入。