程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> Oracle使用JDBC進行增刪改查 表是否存在,oraclejdbc

Oracle使用JDBC進行增刪改查 表是否存在,oraclejdbc

編輯:Oracle教程

Oracle使用JDBC進行增刪改查 表是否存在,oraclejdbc


Oracle使用JDBC進行增刪改查

數據庫和表

table USERS
(
  USERNAME VARCHAR2(20) not null,
  PASSWORD VARCHAR2(20)
)
alter table USERS
  add constraint U_PK primary key (USERNAME)
//檢查表是否存在
public boolean validateTableExist(String tableName){
int result = 0;
String sql = "SELECT COUNT(*) FROM USER_OBJECTS WHERE OBJECT_NAME = UPPER('"+tableName+"')";
Connection conn = this.getSession().connection();
Statement st = null;
ResultSet rs = null;
try{
st = conn.createStatement();
rs = st.executeQuery(sql);
rs.next();
result = rs.getInt(1);
}catch(Exception e){
e.printStackTrace();
}finally{
this.util.closeAll(rs, st, conn);
}
return result==0?false:true;
}

JDBC的完整方法,CloseAll方法就不給你寫了.如果表存在就返回True,不存在返回False,可以直接用在你的IF判斷中:
if(validateTableExist(tname)){
String sql1="insert into "+tname+" values(?,?,?,?,?,?)";
....................
}


/**
 * JdbcExample.java
 *
 * Provider: CoderDream's Studio
 *
 * History
 *    Date(DD/MM/YYYY)    Author          Description
 * ----------------------------------------------------------------------------
 *    Apr 14, 2008                CoderDream        Created
 */

package com.coderdream.jdbc.oracle;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * @author XL
 *
 */
public class JdbcExample {


    private static Connection getConn() {
        String driver = "oracle.jdbc.driver.OracleDriver";
        String url = "jdbc:oracle:thin:@10.5.15.117:1521:csi";
        String username = "scott";
        String password = "tiger";
        Connection conn = null;
        try {
            Class.forName(driver);
            // new oracle.jdbc.driver.OracleDriver();
            conn = DriverManager.getConnection(url, username, password);
        }
        catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        catch (SQLException e) {
            e.printStackTrace();
        }

        return conn;
    }

    private static int insert(String username, String password) {
        Connection conn = getConn();
        int i = 0;
        String sql = "insert into users (username,password) values(?,?)";
        PreparedStatement pstmt;
        try {
            pstmt = conn.prepareStatement(sql);
            // Statement stat = conn.createStatement();
            pstmt.setString(1, username);
            pstmt.setString(2, password);
            i = pstmt.executeUpdate();
            System.out.println("resutl: " + i);

            pstmt.close();
            conn.close();
        }
        catch (SQLException e) {
            e.printStackTrace();
        }

        return i;
    }

    private static void query() {
        Connection conn = getConn();
        String sql = "select * from users";
        PreparedStatement pstmt;
        try {
            pstmt = conn.prepareStatement(sql);
            ResultSet rs = pstmt.executeQuery();
            while (rs.next()) {
                System.out.println("name: " + rs.getString("username")
                        + " \tpassword: " + rs.getString("password"));
            }

            rs.close();
            pstmt.close();
            conn.close();
        }
        catch (SQLException e) {
            e.printStackTrace();
        }

    }

    private static int update(String oldName, String newPass) {
        Connection conn = getConn();
        int i = 0;
        String sql = "update users set password='" + newPass
                + "' where username='" + oldName + "'";         PreparedStatement pstmt;         try {             pstmt = conn.prepareStatement(sql);             i = pstmt.executeUpdate();             System.out.println("resutl: " + i);             pstmt.close();             conn.close();         }         catch (SQLException e) {             e.printStackTrace();         }         return i;     }          private static int delete(String username) {         Connection conn = getConn();         int i = 0;         String sql = "delete users where username='" + username + "'";         PreparedStatement pstmt;         try {             pstmt = conn.prepareStatement(sql);             i = pstmt.executeUpdate();             System.out.println("resutl: " + i);             pstmt.close();             conn.close();         }         catch (SQLException e) {             e.printStackTrace();         }         return i;     }     /**      * @param args      */     public static void main(String[] args) {         insert("CDE", "123");         insert("CoderDream", "456");         query();         update("CoderDream", "456");         query();         delete("CoderDream");         query();     } }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved