001package gudusoft.gsqlparser.stmt; 002 003 004import gudusoft.gsqlparser.EDbObjectType; 005import gudusoft.gsqlparser.EDbVendor; 006import gudusoft.gsqlparser.ESqlStatementType; 007import gudusoft.gsqlparser.TCustomSqlStatement; 008import gudusoft.gsqlparser.nodes.TObjectName; 009import gudusoft.gsqlparser.nodes.TParseTreeVisitor; 010import gudusoft.gsqlparser.nodes.TTypeName; 011import gudusoft.gsqlparser.nodes.mssql.TMssqlCreateTypeSqlNode; 012 013public class TMssqlCreateType extends TCustomSqlStatement { 014 015 private TObjectName type_name; 016 private TTypeName base_type; 017 private TObjectName externalName; 018 private boolean isNull = false; 019 private boolean isNotNull = false; 020 021 public void setNull(boolean isNull) { 022 this.isNull = isNull; 023 } 024 025 public void setNotNull(boolean isNotNull) { 026 this.isNotNull = isNotNull; 027 } 028 029 public boolean isNull() { 030 031 return isNull; 032 } 033 034 public boolean isNotNull() { 035 return isNotNull; 036 } 037 038 public void setType_name(TObjectName type_name) { 039 this.type_name = type_name; 040 } 041 042 public void setBase_type(TTypeName base_type) { 043 this.base_type = base_type; 044 } 045 046 public void setExternalName(TObjectName externalName) { 047 this.externalName = externalName; 048 } 049 050 public TObjectName getType_name() { 051 052 return type_name; 053 } 054 055 public TTypeName getBase_type() { 056 return base_type; 057 } 058 059 public TObjectName getExternalName() { 060 return externalName; 061 } 062 063 public TMssqlCreateType (EDbVendor dbvendor){ 064 super(dbvendor); 065 sqlstatementtype = ESqlStatementType.sstmssqlcreatetype ; 066 } 067 068 public int doParseStatement(TCustomSqlStatement psql) { 069 if (rootNode == null) return -1; 070 TMssqlCreateTypeSqlNode createTypeSqlNode = (TMssqlCreateTypeSqlNode)rootNode; 071 type_name = createTypeSqlNode.getType_name(); 072 // type_name.setObjectType(TObjectName.ttobjTypeName); 073 type_name.setDbObjectType(EDbObjectType.user_defined_type); 074 base_type = createTypeSqlNode.getBase_type(); 075 externalName = createTypeSqlNode.getExternalName(); 076 isNull = createTypeSqlNode.isNull(); 077 isNotNull = createTypeSqlNode.isNotNull(); 078 return 0; 079 } 080 081 public void accept(TParseTreeVisitor v){ 082 v.preVisit(this); 083 v.postVisit(this); 084 } 085 086 public void acceptChildren(TParseTreeVisitor v){ 087 v.preVisit(this); 088 v.postVisit(this); 089 } 090 091}