a22093f5bb02c528b80f08a7994777a0e65edb9f.svn-base 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. package org.jeecg.modules.online.config.service.impl;
  2. import org.apache.commons.lang.StringUtils;
  3. import org.jeecg.modules.online.config.service.DbTableHandleI;
  4. import org.jeecg.modules.online.config.util.ColumnMeta;
  5. public class MysqlTableHandle implements DbTableHandleI {
  6. public MysqlTableHandle() {
  7. }
  8. public String getAddColumnSql(ColumnMeta columnMeta) {
  9. return " ADD COLUMN " + this.a(columnMeta) + ";";
  10. }
  11. public String getReNameFieldName(ColumnMeta columnMeta) {
  12. return "CHANGE COLUMN " + columnMeta.getOldColumnName() + " " + this.b(columnMeta) + " ;";
  13. }
  14. public String getUpdateColumnSql(ColumnMeta cgformcolumnMeta, ColumnMeta datacolumnMeta) {
  15. return " MODIFY COLUMN " + this.b(cgformcolumnMeta, datacolumnMeta) + ";";
  16. }
  17. public String getMatchClassTypeByDataType(String dataType, int digits) {
  18. String var3 = "";
  19. if (dataType.equalsIgnoreCase("varchar")) {
  20. var3 = "string";
  21. } else if (dataType.equalsIgnoreCase("double")) {
  22. var3 = "double";
  23. } else if (dataType.equalsIgnoreCase("int")) {
  24. var3 = "int";
  25. } else if (dataType.equalsIgnoreCase("Date")) {
  26. var3 = "date";
  27. } else if (dataType.equalsIgnoreCase("Datetime")) {
  28. var3 = "date";
  29. } else if (dataType.equalsIgnoreCase("decimal")) {
  30. var3 = "bigdecimal";
  31. } else if (dataType.equalsIgnoreCase("text")) {
  32. var3 = "text";
  33. } else if (dataType.equalsIgnoreCase("blob")) {
  34. var3 = "blob";
  35. }
  36. return var3;
  37. }
  38. public String dropTableSQL(String tableName) {
  39. return " DROP TABLE IF EXISTS " + tableName + " ;";
  40. }
  41. public String getDropColumnSql(String fieldName) {
  42. return " DROP COLUMN " + fieldName + ";";
  43. }
  44. private String a(ColumnMeta var1, ColumnMeta var2) {
  45. String var3 = "";
  46. if (var1.getColunmType().equalsIgnoreCase("string")) {
  47. var3 = var1.getColumnName() + " varchar(" + var1.getColumnSize() + ") " + ("Y".equals(var1.getIsNullable()) ? "NULL" : "NOT NULL");
  48. } else if (var1.getColunmType().equalsIgnoreCase("date")) {
  49. var3 = var1.getColumnName() + " datetime " + ("Y".equals(var1.getIsNullable()) ? "NULL" : "NOT NULL");
  50. } else if (var1.getColunmType().equalsIgnoreCase("int")) {
  51. var3 = var1.getColumnName() + " int(" + var1.getColumnSize() + ") " + ("Y".equals(var1.getIsNullable()) ? "NULL" : "NOT NULL");
  52. } else if (var1.getColunmType().equalsIgnoreCase("double")) {
  53. var3 = var1.getColumnName() + " double(" + var1.getColumnSize() + "," + var1.getDecimalDigits() + ") " + ("Y".equals(var1.getIsNullable()) ? "NULL" : "NOT NULL");
  54. } else if (var1.getColunmType().equalsIgnoreCase("bigdecimal")) {
  55. var3 = var1.getColumnName() + " decimal(" + var1.getColumnSize() + "," + var1.getDecimalDigits() + ") " + ("Y".equals(var1.getIsNullable()) ? "NULL" : "NOT NULL");
  56. } else if (var1.getColunmType().equalsIgnoreCase("text")) {
  57. var3 = var1.getColumnName() + " text " + ("Y".equals(var1.getIsNullable()) ? "NULL" : "NOT NULL");
  58. } else if (var1.getColunmType().equalsIgnoreCase("blob")) {
  59. var3 = var1.getColumnName() + " blob " + ("Y".equals(var1.getIsNullable()) ? "NULL" : "NOT NULL");
  60. }
  61. var3 = var3 + (StringUtils.isNotEmpty(var1.getComment()) ? " COMMENT '" + var1.getComment() + "'" : " ");
  62. var3 = var3 + (StringUtils.isNotEmpty(var1.getFieldDefault()) ? " DEFAULT " + var1.getFieldDefault() : " ");
  63. String var4 = var1.getPkType();
  64. if ("id".equalsIgnoreCase(var1.getColumnName()) && var4 != null && ("SEQUENCE".equalsIgnoreCase(var4) || "NATIVE".equalsIgnoreCase(var4))) {
  65. var3 = var3 + " AUTO_INCREMENT ";
  66. }
  67. return var3;
  68. }
  69. private String b(ColumnMeta var1, ColumnMeta var2) {
  70. String var3 = this.a(var1, var2);
  71. return var3;
  72. }
  73. private String a(ColumnMeta var1) {
  74. String var2 = this.a(var1, (ColumnMeta)null);
  75. return var2;
  76. }
  77. private String b(ColumnMeta var1) {
  78. String var2 = this.a(var1, (ColumnMeta)null);
  79. return var2;
  80. }
  81. public String getCommentSql(ColumnMeta columnMeta) {
  82. return "";
  83. }
  84. public String getSpecialHandle(ColumnMeta cgformcolumnMeta, ColumnMeta datacolumnMeta) {
  85. return null;
  86. }
  87. public String dropIndexs(String indexName, String tableName) {
  88. return "DROP INDEX " + indexName + " ON " + tableName;
  89. }
  90. public String countIndex(String indexName, String tableName) {
  91. return "select COUNT(*) from information_schema.statistics where table_name = '" + tableName + "' AND index_name = '" + indexName + "'";
  92. }
  93. }