数据库的批量操作
程序员文章站
2022-03-10 15:01:08
这里的数据库用的Firebird数据库,当然可以用Mysql,Oracle等主流数据库,方法也只是简单列出了删除,增删改查类似,如法炮制。 ......
package com.mescs.baseinfo.utils; import java.sql.connection; import java.sql.databasemetadata; import java.sql.drivermanager; import java.sql.preparedstatement; import java.sql.resultset; import java.sql.sqlexception; import java.sql.statement; import java.util.arraylist; import java.util.list; import org.slf4j.logger; import org.slf4j.loggerfactory; /** * * 类名:databaseutil <br /> * * 功能:数据库操作 * * @author 田宇鹏 <br /> * 创建时间:sep 10, 2018 10:55:02 am <br /> * @version sep 10, 2018 */ public class databaseutil { private final static logger logger = loggerfactory.getlogger(databaseutil.class); private static final string driver = "org.firebirdsql.jdbc.fbdriver"; private static final string url = "jdbc:firebirdsql:embedded:mescs.fdb?lc_ctype=utf8"; private static final string username = "root"; private static final string password = "root"; private static final string sql = "delete from ";// 数据库数据库表内容清空 static { try { class.forname(driver); } catch (classnotfoundexception e) { logger.error("数据库驱动加载失败===>>>", e); } } /** * 获取数据库连接 * * @return */ public static connection getconnection() { connection conn = null; try { conn = drivermanager.getconnection(url, username, password); } catch (sqlexception e) { logger.error("数据库连接失败===>>>", e); } return conn; } /** * 关闭数据库连接 * @param conn */ public static void closeconnection(connection conn) { if(conn != null) { try { conn.close(); } catch (sqlexception e) { logger.error("数据库关闭失败===>>>", e); } } } /** * 获取数据库下的所有表名 */ public static list<string> gettablenames() { list<string> tablenames = new arraylist<string>(); connection conn = getconnection(); resultset rs = null; try { //获取数据库的元数据 databasemetadata db = conn.getmetadata(); //从元数据中获取到所有的表名 rs = db.gettables(null, null, null, new string[] { "table" }); while(rs.next()) { tablenames.add(rs.getstring(3)); } } catch (sqlexception e) { logger.error("获取数据库表名失败===>>>", e); } finally { try { rs.close(); closeconnection(conn); } catch (sqlexception e) { logger.error("关闭数据库失败===>>>", e); } } return tablenames; } /* * 清空数据库表 */ public static void emptydatabase() throws sqlexception { list<string> tablenames = gettablenames(); connection conn = getconnection(); preparedstatement pstemt = null; for(string table:tablenames){ if(!table.equals("sysparam") && !table.equals("t_clear_data")){ string tablesql = sql + table; try { pstemt = conn.preparestatement(tablesql); statement stmt=conn.createstatement(); stmt.executeupdate(tablesql); } catch (sqlexception e) { e.printstacktrace(); } } } conn.close(); } }
这里的数据库用的firebird数据库,当然可以用mysql,oracle等主流数据库,方法也只是简单列出了删除,增删改查类似,如法炮制。
上一篇: 利用ASP存取各种常用类型数据库(6)
推荐阅读
-
mysql的innodb数据库引擎详解
-
Mysql数据库从5.6.28版本升到8.0.11版本部署项目时遇到的问题及解决方法
-
Database.NET强大的数据库查询管理工具使用图文教程
-
Total Uninstall 卸载软件的使用方法以及Total Uninstall如何批量卸载
-
python中使用 xlwt 操作excel的常见方法与问题
-
微信公众平台如何查看自己的活动数据库?微信公众平台查看活动数据库的方法
-
C#使用ODBC与OLEDB连接数据库的方法示例
-
sqlserver数据库移动数据库路径的脚本示例
-
SQLServer用t-sql命令批量删除数据库中指定表(游标循环删除)
-
C#利用ODP.net连接Oracle数据库的操作方法