All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.kg.component.generator.config.querys.OracleQuery Maven / Gradle / Ivy

There is a newer version: 1.1.26
Show newest version
/*
 * Copyright (c) 2011-2021, baomidou ([email protected]).
 * 

* Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at *

* https://www.apache.org/licenses/LICENSE-2.0 *

* Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.kg.component.generator.config.querys; /** * Oracle 表数据查询 * * @author hubin * @since 2018-01-16 */ public class OracleQuery extends AbstractDbQuery { @Override public String tablesSql() { return "SELECT * FROM ALL_TAB_COMMENTS WHERE OWNER='%s'"; } @Override public String tableFieldsSql() { return "SELECT A.COLUMN_NAME, CASE WHEN A.DATA_TYPE='NUMBER' THEN " + "(CASE WHEN A.DATA_PRECISION IS NULL THEN A.DATA_TYPE " + "WHEN NVL(A.DATA_SCALE, 0) > 0 THEN A.DATA_TYPE||'('||A.DATA_PRECISION||','||A.DATA_SCALE||')' " + "ELSE A.DATA_TYPE||'('||A.DATA_PRECISION||')' END) " + "ELSE A.DATA_TYPE END DATA_TYPE, B.COMMENTS,DECODE(C.POSITION, '1', 'PRI') KEY " + "FROM ALL_TAB_COLUMNS A " + " INNER JOIN ALL_COL_COMMENTS B ON A.TABLE_NAME = B.TABLE_NAME AND A.COLUMN_NAME = B.COLUMN_NAME AND B.OWNER = '#schema'" + " LEFT JOIN ALL_CONSTRAINTS D ON D.TABLE_NAME = A.TABLE_NAME AND D.CONSTRAINT_TYPE = 'P' AND D.OWNER = '#schema'" + " LEFT JOIN ALL_CONS_COLUMNS C ON C.CONSTRAINT_NAME = D.CONSTRAINT_NAME AND C.COLUMN_NAME=A.COLUMN_NAME AND C.OWNER = '#schema'" + "WHERE A.OWNER = '#schema' AND (A.TABLE_NAME = '%s' OR A.TABLE_NAME = '%s') ORDER BY A.COLUMN_ID "; } @Override public String tableName() { return "TABLE_NAME"; } @Override public String tableComment() { return "COMMENTS"; } @Override public String fieldName() { return "COLUMN_NAME"; } @Override public String fieldType() { return "DATA_TYPE"; } @Override public String fieldComment() { return "COMMENTS"; } @Override public String fieldKey() { return "KEY"; } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy