import java.sql.DriverManager;
import java.sql.SQLException;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.ResultSet;
public class JDBCTest {
public static void main(String[] args) {
String driverName = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://127.0.0.1:3306/hrm";
String username = "root";
String password = "root";
String fKeyColumn = "adeptid";
String fKeyColumnValue = "2331";
updateOneColum(driverName, url, username, password, fKeyColumn, fKeyColumnValue);
}
/**
* 功能:逻辑删除包含某个外键列的值为fKeyColumnValue的行
* @param driverName
* @param url
* @param username
* @param password
* @param fKeyColumn 要外键列
* @param fKeyColumnValue 外键列的值
*/
private static void updateOneColum(String driverName, String url, String username, String password,
String fKeyColumn, String fKeyColumnValue) {
Connection con = null;
PreparedStatement ps = null;
try {
Class.forName(driverName);
con = (Connection) DriverManager.getConnection(url, username, password);
ResultSet rs = (ResultSet) con.getMetaData().getTables("", "", "", null);
while (rs.next()) {
String tableName = rs.getString("TABLE_NAME");
String sql = "select * from " + tableName;
ps = (PreparedStatement) con.prepareStatement(sql);
ResultSet result = (ResultSet) ps.executeQuery();
if (checkColum(result, fKeyColumn)) {
while (result.next()) {
String idString = result.getString(fKeyColumn);
if (null != idString && idString.equals(fKeyColumnValue)) {
String updateSql = "update " + tableName + " set adeptnum='12346' where " + fKeyColumn +
"=" + idString;
ps = (PreparedStatement) con.prepareStatement(updateSql);
ps.executeUpdate();
}
}
}
}
}
catch (Exception e) {
e.printStackTrace();
}
finally {
try {
con.close();
}
catch (SQLException e) {
e.printStackTrace();
}
}
}
/**
* 功能:判断表中是否包含外键列
* @param result 表的结果集
* @param fKeyColumn 外键列
* @return
*/
public static Boolean checkColum(ResultSet result, String fKeyColumn) {
try {
if (null != result && result.findColumn(fKeyColumn) > 0) {
return true;
}
}
catch (Exception e) {
return false;
}
return false;
}
}
import java.sql.SQLException;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.ResultSet;
public class JDBCTest {
public static void main(String[] args) {
String driverName = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://127.0.0.1:3306/hrm";
String username = "root";
String password = "root";
String fKeyColumn = "adeptid";
String fKeyColumnValue = "2331";
updateOneColum(driverName, url, username, password, fKeyColumn, fKeyColumnValue);
}
/**
* 功能:逻辑删除包含某个外键列的值为fKeyColumnValue的行
* @param driverName
* @param url
* @param username
* @param password
* @param fKeyColumn 要外键列
* @param fKeyColumnValue 外键列的值
*/
private static void updateOneColum(String driverName, String url, String username, String password,
String fKeyColumn, String fKeyColumnValue) {
Connection con = null;
PreparedStatement ps = null;
try {
Class.forName(driverName);
con = (Connection) DriverManager.getConnection(url, username, password);
ResultSet rs = (ResultSet) con.getMetaData().getTables("", "", "", null);
while (rs.next()) {
String tableName = rs.getString("TABLE_NAME");
String sql = "select * from " + tableName;
ps = (PreparedStatement) con.prepareStatement(sql);
ResultSet result = (ResultSet) ps.executeQuery();
if (checkColum(result, fKeyColumn)) {
while (result.next()) {
String idString = result.getString(fKeyColumn);
if (null != idString && idString.equals(fKeyColumnValue)) {
String updateSql = "update " + tableName + " set adeptnum='12346' where " + fKeyColumn +
"=" + idString;
ps = (PreparedStatement) con.prepareStatement(updateSql);
ps.executeUpdate();
}
}
}
}
}
catch (Exception e) {
e.printStackTrace();
}
finally {
try {
con.close();
}
catch (SQLException e) {
e.printStackTrace();
}
}
}
/**
* 功能:判断表中是否包含外键列
* @param result 表的结果集
* @param fKeyColumn 外键列
* @return
*/
public static Boolean checkColum(ResultSet result, String fKeyColumn) {
try {
if (null != result && result.findColumn(fKeyColumn) > 0) {
return true;
}
}
catch (Exception e) {
return false;
}
return false;
}
}