SpiderDB

数据库结构扒取工具
授权协议 Apache
开发语言 Java
所属分类 程序开发、 ORM/持久层框架
软件类型 开源软件
地区 不详
投 递 者 施宏大
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

SpiderDB 是一个轻量级的数据库结构扒取工具,使用 Java 开发。它是一个简单的类库可根据数据库的表结构来生成 POJO 对象,使用简单,支持各种不同的数据库系统。

示例代码:

DBCrawler dbCrawler = new DBCrawler(connection, ConfigEnum.MAXIMUM);
DataBase dataBase = dbCrawler.getDatabase();
System.out.println("productName :" + dataBase.getProductName() + " version:" + dataBase.getProductVersion());

//Return Schemas
SchemaSet schemaSet = dataBase.getSchemaSet();
Set<Schema> schemas = schemaSet.getSchemas();
//Iterate to Fetch the schema information and Tables
for(Schema schema : schemas)
{
   System.out.println("SchemaName :" + schema.getSchamaName());
   TableSet tableSet = schema.getTableSet();
   Set<Table> tables = tableSet.getTables();
   //Iterate to fetch the tables
   for(Table table : tables)
   {
     System.out.println("tableName :" + table.getTableName());
     PrimaryKey primaryKey = table.getPrimaryKey();
     System.out.println("pk_Name:"+primaryKey.getPkName() + " PrimaryKey Columns:" + primaryKey.getColumns());
     
     ColumnSet columnSet = table.getColumnSet();
     System.out.println("Table Columns:"+ columnSet.getColumns());

     Set<ForeignKey> foreignKeys = table.getForeignKeys();
     System.out.println("foreignKeys:"+foreignKeys);
    }
}

 相关资料
  • PHPSSO 数据库结构[更新日期:2010-12-28] 点击查看 PHPCMS 数据库结构[更新日期:2010-12-28] 点击查看

  • 如果需要在程序中 Dump 数据库的结构和数据可以调用 engine.DumpAll(w io.Writer) 和 engine.DumpAllToFile(fpath string)。 DumpAll 方法接收一个io.Writer接口来保存Dump出的数据库结构和数据的SQL语句,这个方法导出的SQL语句并不能通用。只针对当前engine所对应的数据库支持的SQL。 Import 执行数据库S

  • 问题内容: 我有一个专栏 组 。 群组 具有存储在group_types中的不同类型(买方,卖方,裁判)。只有当该组是买方类型时,它才具有另一种(更专门)的类型,例如电气和机械类型。 我对如何将其存储在数据库中感到有些困惑。 有人可以建议我一个数据库结构吗? 谢谢 问题答案: 将您的存储为层次结构表(带有或模型): : 将选择中的所有买家。 : 将选择任何数据库中的所有买家。 如果您不需要层次结构

  • 我正在使用Flatter和firebase构建一个应用程序,我想知道最好的firestore数据库结构是什么。 我希望用户能够发布消息,然后通过帖子内容和海报用户名进行搜索。 为用户创建一个集合,每个文档存储用户名和其他信息,并为帖子创建一个单独的集合,每个文档包含帖子和海报的用户名,这是否有意义? 万一帖子数量超过一百万或更多,查询这种大规模收集是否会产生额外的成本? 将每个用户的帖子作为子集合

  • 同步能够部分智能的根据结构体的变动检测表结构的变动,并自动同步。目前有两个实现: Sync Sync将进行如下的同步操作: * 自动检测和创建表,这个检测是根据表的名字 * 自动检测和新增表中的字段,这个检测是根据字段名 * 自动检测和创建索引和唯一索引,这个检测是根据索引的一个或多个字段名,而不根据索引名称 调用方法如下: err := engine.Sync(new(User), ne

  • 云Firestore的Android示例应用的数据库结构如下所示: 现在考虑这样一种情况:第一家餐厅有大量的评级(这里评级是第一家餐厅id中的其他文档的集合),我只想显示所有餐厅的基本细节,如名称和城市。 我将通过创建如下所示的引用来实现这一点: 我对此有以下问题: 这是正确的方法吗?因为我正在获取一个文档快照,其中还包括我现在不需要的评级集合,因为它会降低加载速度? 我是否应该像在firebas