zoukankan      html  css  js  c++  java
  • Oracle使用JDBC进行增删改查 表是否存在

    数据库和表

    table USERS
    (
      USERNAME VARCHAR2(20not 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")
                            + "  password: " + 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();     } }

  • 相关阅读:
    python02
    使用tableau去将存入mysql都地区点击率进行了展示 感觉很好用
    java使用ssh远程操作linux 提交spark jar
    java操作linux 提交spark jar
    spark与kafka集成进行实时 nginx代理 这种sdk埋点 原生日志实时解析 处理
    github开源的一些ip解析 ,运营商信息,经纬度 地址 后续开发使用
    Oracle 并行执行SQL
    Oracle 序列
    Oracle dblink创建
    Oracle Job维护
  • 原文地址:https://www.cnblogs.com/CooderIsCool/p/4777410.html
Copyright © 2011-2022 走看看