數據庫連接(Oracle/sqlServer增、刪、改、查)
一、把ojdbc6.jar包導入項目中,並且Build path
二、
1.普通連接:
String className="oracle.jdbc.driver.OracleDriver";//oracle的className(ojdbc6.jar)
String url="jdbc:oracle:thin:@127.0.0.1:1521:orcl";//oracle的url(ojdbc6.jar)
//String className="com.microsoft.sqlserver.jdbc.SQLServerDriver";//sqlServer的className(sqljdbc.jar)
//String url="jdbc:sqlserver://localhost:1433;databasename=數據庫名";//sqlServer的url(sqljdbc.jar
Class.forName(className);//導入驅動類
Connection conn=DriverManager.getConnection(url,"sa","123");//創建數據庫連接對象,三個參數分別為:url,user,password
Statement st=conn.createStatement();
//新增========================begin
int addCount=st.executeUpdate("insert into AAA values(‘新增4‘,‘新增4‘,‘新增4‘)");
if(addCount>0)
System.out.println("新增成功");
else
System.out.println("新增失敗");
//新增========================end
//刪除========================begin
int deleteCount = st.executeUpdate("delete AAA where \"id\"=‘新增4‘");
if(deleteCount>0)
System.out.println("刪除成功");
else
System.out.println("刪除失敗");
//刪除========================end
//修改========================begin
int updateCount=st.executeUpdate("update AAA set num =‘修改1‘, tag =‘修改1‘ where id =‘3‘");
if(updateCount>0)
System.out.println("修改成功");
else
System.out.println("修改失敗");
//修改========================end
//查詢========================begin
ResultSet rs = st.executeQuery("select * from AAA");
System.out.println("id \t num \t tag");
while(rs.next()){
String a=rs.getString(1);//根據下標取字段值,下標從1開始
String b=rs.getString("num");//根據字段名取值,get後面跟的數據類型也是和數據庫來定的,可以是int/double等
String c=rs.getString(3);
System.out.println(a+"\t"+b+"\t"+c);
}
//查詢========================end
rs.close();
st.close();
conn.close();
2.預編譯連接:
String className="oracle.jdbc.driver.OracleDriver";//oracle的className(ojdbc6.jar)
String url="jdbc:oracle:thin:@127.0.0.1:1521:Magma";//oracle的url(ojdbc6.jar)
//String className="com.microsoft.sqlserver.jdbc.SQLServerDriver";//sqlServer的className(sqljdbc.jar)
//String url="jdbc:sqlserver://localhost:1433;databasename=數據庫名";//sqlServer的url(sqljdbc.jar)
Class.forName(className);//導入驅動類
Connection conn=DriverManager.getConnection(url,"jczb","hxzyjczb");//創建數據庫連接對象,三個參數分別為:url,user,password
//新增=============================begin
String sql="insert into AAA values(?,?,?)";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1, "id5");//給預編譯sql傳值,String類型,其它類型可以自選比如:ps.setInt(1, 199);不論字段是什麽類型,只要數據可以轉得過來,可以是int/double等
ps.setInt(2, 8);
ps.setString(3, "tag4");
int executeUpdate = ps.executeUpdate();
if(executeUpdate>0)
System.out.println("新增成功");
else
System.out.println("新增失敗");
//新增=============================end
//修改=============================begin
String sql1="update AAA set num =?";
PreparedStatement ps1 = conn.prepareStatement(sql1);
ps1.setString(1, "4");//給預編譯sql傳值,String類型,其它類型可以自選比如:ps.setInt(1, 199);不論字段是什麽類型,只要數據可以轉得過來,可以是int/double等
//ps1.setString(2, "id1");
int executeUpdate1 = ps1.executeUpdate();
if(executeUpdate1>0)
System.out.println("修改成功");
else
System.out.println("修改失敗");
//修改=============================end
//查詢=============================begin
String sql2="select * from AAA";
PreparedStatement ps2 = conn.prepareStatement(sql2);
//預編譯沒有參數要傳,可以不傳,String類型,其它類型可以自選比如:ps.setInt(1, 199);不論字段是什麽類型,只要數據可以轉得過來,可以是int/double等
ResultSet rs = ps2.executeQuery();
System.out.println("id \t num \t tag \t");
while(rs.next()){
System.out.println(rs.getString(1)+"\t"+rs.getInt("num")+"\t"+rs.getString(3));
/get後面跟的數據類型也是和數據庫或自己的需求來定的,不論字段是什麽類型,只要數據可以轉得過來,可以是int/double等
}
//查詢=============================end
//新增=============================begin
String sql3="delete AAA where id =?";
PreparedStatement ps3 = conn.prepareStatement(sql3);
ps3.setString(1, "id2");//給預編譯sql傳值,String類型,其它類型可以自選比如:ps.setInt(1, 199);不論字段是什麽類型,只要數據可以轉得過來,可以是int/double等
int executeUpdate3 = ps3.executeUpdate();
if(executeUpdate3>0)
System.out.println("刪除成功");
else
System.out.println("刪除失敗");
//新增=============================end
ps3.close();
conn.close();
數據庫連接(Oracle/sqlServer增、刪、改、查)