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 * 數據庫名:test11 * 表名:user12 * 擁有字段:13 * id:int(identity(1,1))14 * userName:nvarchar15 * passWord:nvarchar16 * ---------------------------17 * 部分方法會要求try-catch18 * 為了簡潔19 * 對異常進行了 throws20 */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,反之:false33 */34 private static PreparedStatement ps;35 36 public static void main(String[] args) throws ClassNotFoundException, SQLException {37 //訪問數據庫的url38 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");//設置小紅的密碼為:pwd55 ps.setString(2, "小紅");//設置update條件,userName=小紅56 System.out.println("更新了:"+ps.executeUpdate()+" 條記錄");57 58 /*query*/59 ps = conn.prepareStatement("select * from [user]");//查詢所有user60 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 }
新聞熱點
疑難解答