Package cn.mapway.ui.server.db
Class PgTools
java.lang.Object
cn.mapway.ui.server.db.PgTools
- All Implemented Interfaces:
IDbSource,Closeable,AutoCloseable
Pg数据库工具
--------------------------
该工具可以将一数据库表的元数据和数据导出到一个SQLITE中
也可以从Sqlite中恢复表
SQLite文件包含了数据表的定义和数据
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbackupToSqlite(String schema, String tableName, String sqliteFile, IProgressHandler handler) 备份一张表到sqlite中voidclose()static PgToolsbooleancreateDatabase(String dbName, String owner) 创建数据库createSqlFromMetadata(TableMetadata tableMetadata, String schemaName, String newTableName) 生成创建表的SQLvoidcreateTable(TableMetadata tableMetadata, boolean dropIfExists) voiddropTable(TableMetadata tableMetadata) voideachRow(TableMetadata tableMetadata, org.nutz.lang.Each<ResultSet> consumer) 遍历数据库中没一条记录fetchTableMetadata(String schema, String sourceTableName) 获取表元数据generateDropTableSql(TableMetadata tableMetadata) generateSelectQuery(TableMetadata tableMetadata) longgetRowCount(TableMetadata tableMetadata) 获取表的记录数量booleaninstallExtension(String extension) 数据库安装扩展booleanisDatabaseExist(String databaseName) 判断postgres是否存在数据库booleanisTableExist(String schema, String tableName) listView(Connection conn, String schema) static voidvoidrestore(IDbSource dbSource, TableMetadata sourceMetadata, TableMetadata targetMetadata, IProgressHandler handler) 从数据源中恢复数据voidrestoreFromSqlite(String schema, String tableName, String sqliteFile, IProgressHandler handler) 从sqlite中恢复一张表voidtruncateTable(String schema, String tableName) voidupdateTableIndex(TableMetadata tableMetadata) 更新表索引
-
Constructor Details
-
PgTools
-
-
Method Details
-
backupToSqlite
public void backupToSqlite(String schema, String tableName, String sqliteFile, IProgressHandler handler) throws Exception 备份一张表到sqlite中- Parameters:
tableName-sqliteFile-- Throws:
Exception
-
restoreFromSqlite
public void restoreFromSqlite(String schema, String tableName, String sqliteFile, IProgressHandler handler) throws Exception 从sqlite中恢复一张表- Parameters:
schema-tableName-sqliteFile-handler-- Throws:
Exception
-
create
public static PgTools create(String host, String port, String db, String userName, String password) throws SQLException - Throws:
SQLException
-
listTable
-
listView
-
fetchTableMetadata
获取表元数据- Parameters:
sourceTableName- "public.sys_config"- Returns:
- 表的元数据
- Throws:
SQLException
-
isTableExist
-
truncateTable
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-
isDatabaseExist
判断postgres是否存在数据库- Parameters:
databaseName-- Returns:
-
createDatabase
创建数据库- Parameters:
dbName-owner-
-
installExtension
数据库安装扩展- Parameters:
extension-- Returns:
-
main
-