Home > Database > Mysql Tutorial > 判断数据库表是否存在以及修改表名_MySQL

判断数据库表是否存在以及修改表名_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-01 13:30:13
Original
1413 people have browsed it

bitsCN.com

判断数据库表是否存在以及修改表名

 

一、判断数据库表是否存在:

 

首先要拿到数据库连接conn,调用DatabaseMetaData dbmd = conn.getDataMeta();之后调用如下方法:

 

  /**     * 根据表名,判断数据库表是否存在     * @param tableName     * @return true:存在该表,false:不存在该表     */    public boolean hasTable(String tableName) {      Init();        boolean result = false;                                                       //判断某一个表是否存在        try{                  ResultSet set = dbmd.getTables (null, null, tableName, null);             //获取查找结果         while (set.next()) {                                                            //如果查找结果不为空,则说明存在该表                result = true;                                                             //将返回结果置为true                                                               }        }catch(Exception e){         e.printStackTrace();        }        return result;    }
Copy after login

二、修改表名:

首先依然要拿到数据库连接conn和数据库描述对象dbmd以及Statement对象st,之后调用如下方法

    /**     * 修改表名     * @param srcTableName 源表名     * @param newTableName 新表名     * @return true:修改表名成功,false:修改表名失败     */    public boolean renameTable(String srcTableName,String newTableName){     Init();     boolean result = false;     StringBuffer sql = new StringBuffer();     try{      String dataBaseType = dbmd.getDatabaseProductName();                   //获取数据库类型          if(("Microsoft SQL Server").equals(dataBaseType)){                              //sqlServer       try{        sql.append("EXEC sp_rename"+" "+srcTableName).append(",").append(newTableName);        int temp = 0;        temp = st.executeUpdate(sql.toString());                                              //执行更新操作,返回结果        if(1==temp){         result = true;                                                                                         //将返回值设为true        }       }catch(Exception e){        e.printStackTrace();       }            }else if(("HSQL Database Engine").equals(dataBaseType)||("MySQL").equals(dataBaseType)){   //hsql和mysql       try{        sql.append("ALTER TABLE"+" "+srcTableName+" "+"RENAME TO"+" "+newTableName);        int temp = 1;        temp = st.executeUpdate(sql.toString());                                               //执行更新操作,返回结果        if(0==temp){             result = true;                                                                                          //将返回值设为true        }       }catch(Exception e){        e.printStackTrace();       }      }else{  //尚未实现对oracle和db2判断        }     }catch(Exception e){      e.printStackTrace();     }      //System.out.println(result);     return result;             }
Copy after login

 


bitsCN.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template