Class OracleDataBaseQuery

java.lang.Object
org.miaixz.bus.shade.screw.dialect.AbstractDatabaseQuery
org.miaixz.bus.shade.screw.dialect.oracle.OracleDataBaseQuery
All Implemented Interfaces:
DatabaseQuery

public class OracleDataBaseQuery extends AbstractDatabaseQuery
Oracle 数据库查询

还是采用从驱动中拿到数据的方式,这里注意一点,一定要加入配置参数remarks为true 否则表和列等说明不会查询出来 hikari: config.addDataSourceProperty("remarks", "true");

不过这种查询性能很慢 https://docs.oracle.com/en/database/oracle/oracle-database/20/jjdbc/performance-extensions.html#GUID-15865071-39F2-430F-9EDA-EB34D0B2D560 所以,只能够通过自定义SQL来了

Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • OracleDataBaseQuery

      public OracleDataBaseQuery(DataSource dataSource)
      构造函数
      Parameters:
      dataSource - DataSource
  • Method Details

    • getDataBase

      public Database getDataBase() throws org.miaixz.bus.core.lang.exception.InternalException
      获取数据库
      Returns:
      Database 数据库信息
      Throws:
      org.miaixz.bus.core.lang.exception.InternalException - 异常
    • getTables

      public List<OracleTable> getTables() throws org.miaixz.bus.core.lang.exception.InternalException
      获取表信息
      Returns:
      List 所有表信息
      Throws:
      org.miaixz.bus.core.lang.exception.InternalException - 异常
    • getTableColumns

      public List<OracleColumn> getTableColumns(String table) throws org.miaixz.bus.core.lang.exception.InternalException
      获取列信息
      Parameters:
      table - String 表名
      Returns:
      List 表字段信息
      Throws:
      org.miaixz.bus.core.lang.exception.InternalException - 异常
    • getTableColumns

      public List<? extends Column> getTableColumns() throws org.miaixz.bus.core.lang.exception.InternalException
      获取所有列信息
      Returns:
      List 表字段信息
      Throws:
      org.miaixz.bus.core.lang.exception.InternalException - 异常
    • getPrimaryKeys

      public List<? extends PrimaryKey> getPrimaryKeys(String table) throws org.miaixz.bus.core.lang.exception.InternalException
      根据表名获取主键
      Parameters:
      table - String
      Returns:
      List
      Throws:
      org.miaixz.bus.core.lang.exception.InternalException - 异常
    • getPrimaryKeys

      public List<? extends PrimaryKey> getPrimaryKeys() throws org.miaixz.bus.core.lang.exception.InternalException
      根据表名获取主键
      Specified by:
      getPrimaryKeys in interface DatabaseQuery
      Overrides:
      getPrimaryKeys in class AbstractDatabaseQuery
      Returns:
      List
      Throws:
      org.miaixz.bus.core.lang.exception.InternalException - 异常