?? 4.27.txt
字號:
及聯表的刪除
方法:先刪除從表的相關數據,再刪除主表的相關數據。
__________________________________________________________________________
用java語言來實現:
-------------------------------------------------------
/*實現數據庫的連接*/
package conn;
import java.sql.Connection;
import java.sql.DriverManager;
public class DBConn {
public static Connection getDBConn()
{
Connection conn=null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn=DriverManager.getConnection("jdbl:oracle:thin:@127.0.0.1:1521:dbl","scott","tiger");
} catch (Exception e) {
// TODO 自動生成 catch 塊
System.out.println("數據庫連接失敗");
e.printStackTrace();
}
return conn;
}
}
------------------------------------------------------------
/*實現及聯表的刪除*/
package dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import vo.CongBiaoVO;
import vo.ZhuBiaoVO;
import conn.DBConn;
public class JLCaoZuo {
/*刪除從表的相關數據*/
public int deleteFK(int zid,Connection conn) throws Exception{
Statement st=null;
int flg=0;
String sql=" delete congbiao where zid="+zid+" ";
st=conn.createStatement();
flg=st.executeUpdate(sql);
return flg;
}
/*刪除主表的相關數據*/
public int deletePK(int zid){
Connection conn=null;
Statement st=null;
int flg1=0;
int flg2=0;
String sql="delete zhubiao where zid ="+zid + " ";
try {
conn=DBConn.getDBConn();
conn.setAutoCommit(false);
flg1=deleteFK(zid,conn);
st=conn.createStatement();
flg2=st.executeUpdate(sql);
conn.commit();
} catch (Exception e) {
// TODO 自動生成 catch 塊
try {
conn.rollback();
} catch (SQLException e1) {
// TODO 自動生成 catch 塊
e1.printStackTrace();
}
System.out.println("刪除主表失敗");
e.printStackTrace();
}finally{
if(flg1==0){System.out.println("刪除從表失敗");}
try {
conn.setAutoCommit(true);
} catch (SQLException e) {
// TODO 自動生成 catch 塊
e.printStackTrace();
}
try {
st.close();
} catch (SQLException e) {
// TODO 自動生成 catch 塊
e.printStackTrace();
}
try {
conn.close();
} catch (SQLException e) {
// TODO 自動生成 catch 塊
e.printStackTrace();
}
}
return flg2;
}
}
----------------------------------------------------
/*判斷刪除是否成功*/
package bo;
import vo.CongBiaoVO;
import vo.ZhuBiaoVO;
import dao.JLCaoZuo;
public class Business {
public int diaplayDeletePK(int zid){
JLCaoZuo jl1=new JLCaoZuo();
int i=jl1.deletePK(zid);
if(i!=0){
System.out.println("刪除成功");
}else{
System.out.println("刪除失敗");
}
return i;
}
}
-------------------------------------------
/*測試類*/
package test;
import vo.CongBiaoVO;
import vo.ZhuBiaoVO;
import bo.Business;
public class Test {
public static void main(String [] a){
Business b1=new Business();
b1.diaplayDeletePK(9);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -