1 import java.sql.Connection; 2 import java.sql.DriverManager; 3 import java.sql.PreparedStatement; 4 import java.sql.ResultSet; 5 import java.sql.SQLException; 6 /** 7 * TestDemo.java 8 * 使用java对sql server进行增删改查 9 * --------------------------- 10 * 数据库名:test 11 * 表名:user 12 * 拥有字段: 13 * id:int(identity(1,1)) 14 * userName:nvarchar 15 * password:nvarchar 16 * --------------------------- 17 * 部分方法会要求try-catch 18 * 为了简洁 19 * 对异常进行了 throws 20 */ 21 public class TestDemo { 22 /* 23 * 使用PreparedStatement对象操作数据库 24 * 好处比Statement多太多 25 * 安全性,性能... 26 * 27 * PreparedStatement的参数索引从1开始. 28 * 29 * 一些常用的方法 30 * ResultSet executeQuery();//可以执行sql查询,返回ResultSet对象 31 * int executeUpdate();//可以执行“增删改”,返回受影响行数 32 * boolean execute();//可以执行任意sql语句,如果结果为Result对象,返回true,反之:false 33 */ 34 private static PreparedStatement ps; 35 36 public static void main(String[] args) throws ClassNotFoundException, SQLException { 37 //访问数据库的url 38 String url = "jdbc:sqlserver://localhost:1433;databasename=test"; 39 //加载驱动 40 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 41 //建立连接 42 Connection conn = DriverManager.getConnection(url,"username","password"); 43 44 /*insert*/ 45 ps = conn.prepareStatement("insert into [user] values(?,?)"); 46 ps.setString(1, "小红");//设置userName为:小红 47 ps.setString(2, "小红的密码");//设置password为:小红的密码 48 if(ps.executeUpdate()>0){//如果返回的影响行数大于0,则证明增加成功 49 System.out.println("增加了一条记录"); 50 } 51 52 /*update*/ 53 ps = conn.prepareStatement("update [user] set password=? where userName=?"); 54 ps.setString(1, "pwd");//设置小红的密码为:pwd 55 ps.setString(2, "小红");//设置update条件,userName=小红 56 System.out.println("更新了:"+ps.executeUpdate()+" 条记录"); 57 58 /*query*/ 59 ps = conn.prepareStatement("select * from [user]");//查询所有user 60 ResultSet rs = ps.executeQuery(); 61 while(rs.next()){//如果没有下一条记录,返回false,跳出循环 62 //System.out.println("姓名:"+rs.getString("username")+",密码:"+rs.getString("password")); 63 String username = rs.getString("username"); 64 String pwd = rs.getString("password"); 65 System.out.println("姓名:"+username+",密码:"+pwd); 66 } 67 68 /*delete*/ 69 ps = conn.prepareStatement("delete [user]");//这将删除user中的所有记录 70 System.out.println("删除了:"+ps.executeUpdate()+" 条记录"); 71 72 /*close 释放资源*/ 73 rs.close(); 74 ps.close(); 75 conn.close(); 76 } 77 }