123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- package org.jeecg.modules.online.config.service.impl;
- import org.apache.commons.lang.StringUtils;
- import org.jeecg.modules.online.config.service.DbTableHandleI;
- import org.jeecg.modules.online.config.util.ColumnMeta;
- public class OracleTableHandle implements DbTableHandleI {
- public OracleTableHandle() {
- }
- public String getAddColumnSql(ColumnMeta columnMeta) {
- return " ADD " + this.a(columnMeta) + "";
- }
- public String getReNameFieldName(ColumnMeta columnMeta) {
- return "RENAME COLUMN " + columnMeta.getOldColumnName() + " TO " + columnMeta.getColumnName() + "";
- }
- public String getUpdateColumnSql(ColumnMeta cgformcolumnMeta, ColumnMeta datacolumnMeta) {
- return " MODIFY " + this.a(cgformcolumnMeta, datacolumnMeta) + "";
- }
- public String getMatchClassTypeByDataType(String dataType, int digits) {
- String var3 = "";
- if (dataType.equalsIgnoreCase("varchar2")) {
- var3 = "string";
- }
- if (dataType.equalsIgnoreCase("nvarchar2")) {
- var3 = "string";
- } else if (dataType.equalsIgnoreCase("double")) {
- var3 = "double";
- } else if (dataType.equalsIgnoreCase("number") && digits == 0) {
- var3 = "int";
- } else if (dataType.equalsIgnoreCase("number") && digits != 0) {
- var3 = "double";
- } else if (dataType.equalsIgnoreCase("int")) {
- var3 = "int";
- } else if (dataType.equalsIgnoreCase("Date")) {
- var3 = "date";
- } else if (dataType.equalsIgnoreCase("Datetime")) {
- var3 = "date";
- } else if (dataType.equalsIgnoreCase("blob")) {
- var3 = "blob";
- } else if (dataType.equalsIgnoreCase("clob")) {
- var3 = "text";
- }
- return var3;
- }
- public String dropTableSQL(String tableName) {
- return " DROP TABLE " + tableName.toLowerCase() + " ";
- }
- public String getDropColumnSql(String fieldName) {
- return " DROP COLUMN " + fieldName.toUpperCase() + "";
- }
- private String a(ColumnMeta var1) {
- String var2 = "";
- if (var1.getColunmType().equalsIgnoreCase("string")) {
- var2 = var1.getColumnName() + " varchar2(" + var1.getColumnSize() + ")";
- } else if (var1.getColunmType().equalsIgnoreCase("date")) {
- var2 = var1.getColumnName() + " date";
- } else if (var1.getColunmType().equalsIgnoreCase("int")) {
- var2 = var1.getColumnName() + " NUMBER(" + var1.getColumnSize() + ")";
- } else if (var1.getColunmType().equalsIgnoreCase("double")) {
- var2 = var1.getColumnName() + " NUMBER(" + var1.getColumnSize() + "," + var1.getDecimalDigits() + ")";
- } else if (var1.getColunmType().equalsIgnoreCase("bigdecimal")) {
- var2 = var1.getColumnName() + " NUMBER(" + var1.getColumnSize() + "," + var1.getDecimalDigits() + ")";
- } else if (var1.getColunmType().equalsIgnoreCase("text")) {
- var2 = var1.getColumnName() + " CLOB ";
- } else if (var1.getColunmType().equalsIgnoreCase("blob")) {
- var2 = var1.getColumnName() + " BLOB ";
- }
- var2 = var2 + (StringUtils.isNotEmpty(var1.getFieldDefault()) ? " DEFAULT " + var1.getFieldDefault() : " ");
- var2 = var2 + ("Y".equals(var1.getIsNullable()) ? " NULL" : " NOT NULL");
- return var2;
- }
- private String a(ColumnMeta var1, ColumnMeta var2) {
- String var3 = "";
- String var4 = "";
- if (!var2.getIsNullable().equals(var1.getIsNullable())) {
- var4 = var1.getIsNullable().equals("Y") ? "NULL" : "NOT NULL";
- }
- if (var1.getColunmType().equalsIgnoreCase("string")) {
- var3 = var1.getColumnName() + " varchar2(" + var1.getColumnSize() + ")" + var4;
- } else if (var1.getColunmType().equalsIgnoreCase("date")) {
- var3 = var1.getColumnName() + " date " + var4;
- } else if (var1.getColunmType().equalsIgnoreCase("int")) {
- var3 = var1.getColumnName() + " NUMBER(" + var1.getColumnSize() + ") " + var4;
- } else if (var1.getColunmType().equalsIgnoreCase("double")) {
- var3 = var1.getColumnName() + " NUMBER(" + var1.getColumnSize() + "," + var1.getDecimalDigits() + ") " + var4;
- } else if (var1.getColunmType().equalsIgnoreCase("bigdecimal")) {
- var3 = var1.getColumnName() + " NUMBER(" + var1.getColumnSize() + "," + var1.getDecimalDigits() + ") " + var4;
- } else if (var1.getColunmType().equalsIgnoreCase("blob")) {
- var3 = var1.getColumnName() + " BLOB " + var4;
- } else if (var1.getColunmType().equalsIgnoreCase("text")) {
- var3 = var1.getColumnName() + " CLOB " + var4;
- }
- var3 = var3 + (StringUtils.isNotEmpty(var1.getFieldDefault()) ? " DEFAULT " + var1.getFieldDefault() : " ");
- var3 = var3 + var4;
- return var3;
- }
- public String getCommentSql(ColumnMeta columnMeta) {
- return "COMMENT ON COLUMN " + columnMeta.getTableName() + "." + columnMeta.getColumnName() + " IS '" + columnMeta.getComment() + "'";
- }
- public String getSpecialHandle(ColumnMeta cgformcolumnMeta, ColumnMeta datacolumnMeta) {
- return null;
- }
- public String dropIndexs(String indexName, String tableName) {
- return "DROP INDEX " + indexName;
- }
- public String countIndex(String indexName, String tableName) {
- return "select count(*) from user_ind_columns where index_name=upper('" + indexName + "')";
- }
- }
|