📄 xmltable.java
字号:
pctused="PCTUSED "+pctused+"\n";
String initrans=this.getChangedPropertyNewValue("INI_TRANS");
if(initrans==null)
initrans="";
else
initrans="INITRANS "+initrans+"\n";
String maxtrans=this.getChangedPropertyNewValue("MAX_TRANS");
if(maxtrans==null)
maxtrans="";
else
maxtrans="MAXTRANS "+maxtrans+"\n";
return pctfree+pctused+initrans+maxtrans+storageClause();
}
/**未处理OPTIMAL*/
String storageClause(){
String initial=this.getChangedPropertyNewValue("INITIAL_EXTENT");
if(initial==null)
initial="";
else
initial="INITIAL "+initial+"\n";
String next=this.getChangedPropertyNewValue("NEXT_EXTENT");
if(next==null)
next="";
else
next="NEXT "+next+"\n";
String minextents=this.getChangedPropertyNewValue("MIN_EXTENTS");
if(minextents==null)
minextents="";
else
minextents="MINEXTENTS "+minextents+"\n";
String maxextents=this.getChangedPropertyNewValue("MAX_EXTENTS");
if(maxextents==null)
maxextents="";
else
maxextents="MAXEXTENTS "+maxextents+"\n";
String pctincrease=this.getChangedPropertyNewValue("PCT_INCREASE");
if(pctincrease==null)
pctincrease="";
else
pctincrease="PCTINCREASE "+pctincrease+"\n";
String freelists=this.getChangedPropertyNewValue("FREELISTS");
if(freelists==null)
freelists="";
else
freelists="FREELISTS "+freelists+"\n";
String freelistGroups=this.getChangedPropertyNewValue("FREELIST_GROUPS");
if(freelistGroups==null)
freelistGroups="";
else
freelistGroups="FREELIST GROUPS "+freelistGroups+"\n";
String bufferPool=this.getChangedPropertyNewValue("BUFFER_POOL");
if(bufferPool==null)
bufferPool="";
else
bufferPool="BUFFER_POOL "+bufferPool+"\n";
String storage=initial+next+minextents+maxextents+pctincrease+freelists+freelistGroups+bufferPool;
if(!storage.equals(""))
storage="STORAGE("+storage+")"+"\n";
return storage;
}
String loggingClause(){
String logging=this.getChangedPropertyNewValue("LOGGING");
if(logging==null)
logging="";
else if(logging.equals("YES"))
logging="LOGGING"+"\n";
else
logging="NOLOGGING"+"\n";
return logging;
}
/**暂时不处理COMPRESS参数*/
String dataSegmentCompression(){
return "";
}
/**暂时不处理SUPPLEMENTAL LOG GROUP*/
String supplementalLgGrpClauses(){
return "";
}
/**暂时不处理ALLOCATE EXTENT */
String allocateExtentClause(){
return "";
}
/**暂时不处理DEALLOCATE EXTENT */
String deallocateUnusedClause(){
return "";
}
String cacheClause(){
String cache=this.getChangedPropertyNewValue("CACHE");
if(cache==null)
cache="";
else if(cache.equals("N"))
cache="NOCACHE"+"\n";
else
cache="CACHE"+"\n";
return cache;
}
String monitoringClause(){
String monitoring=this.getChangedPropertyNewValue("MONITORING");
//Logger.log(Logger.INFO,"monitoringClause:"+monitoring);
if(monitoring==null)
monitoring="";
else if(monitoring.equals("NO"))
monitoring="NOMONITORING"+"\n";
else
monitoring="MONITORING"+"\n";
return monitoring;
}
/**暂时不处理UPGRADE属性*/
String upgradeTableClause(){
return "";
}
/**暂时不处理record per block属性*/
String recordsPerBlockClause(){
return "";
}
String parallelClause(){
return "";
}
String rowMovementClause(){
String rowmove=this.getChangedPropertyNewValue("ROW_MOVEMENT");
if(rowmove==null)
return "";
else
return rowmove+"ROW MOVEMENT\n";
}
String columnClauses() throws Exception{
XMLSchema srcSchema = null;
XMLSchema dstSchema = null;
srcSchema = CompareFrame.getInstance().getSelectedSrcXMLSchema();
dstSchema = CompareFrame.getInstance().getSelectedDstXMLSchema();
if(srcSchema == null ){
Logger.log(Logger.DEBUG,type2String(this.getType())+":"+this.name+":"+"获取源数据库Schema失败!");
return "";
}
if( dstSchema == null){
Logger.log(Logger.DEBUG,type2String(this.getType())+":"+this.name+":"+"获取目标数据库Schema失败!");
return "";
}
ArrayList addlist=new ArrayList();
ArrayList modifylist=new ArrayList();
ArrayList droplist=new ArrayList();
if(this.getDirectChildren(XMLNode.XML_TABCOLUMNS,XMLTabColumns.NAME)==null)
return "";
Hashtable hash=this.getDirectChildren(XMLNode.XML_TABCOLUMNS,XMLTabColumns.NAME)
.getDirectChildren(XMLNode.XML_TABCOLUMN);
Enumeration enum= hash.elements();
//Logger.log(Logger.DEBUG,"enum:"+enum);
while(enum.hasMoreElements()){
XMLTabColumn col=(XMLTabColumn)enum.nextElement();
//Logger.log(Logger.DEBUG,"status:"+col.getCompareStatus());
//Logger.log(Logger.DEBUG,"column name:"+col.getName());
switch(col.getCompareStatus()){
case(ComparedNode.SRC_EXIST_DST_NULL):
droplist.add(srcSchema.getIndirectChildren(col));
break;
case(ComparedNode.SRC_NULL_DST_EXIST):
addlist.add(dstSchema.getIndirectChildren(col));
break;
case(ComparedNode.SRC_DST_DIFF):
modifylist.add(dstSchema.getIndirectChildren(col));
break;
}
}
//Logger.log(Logger.DEBUG,"addlist size:"+addlist.size());
//Logger.log(Logger.DEBUG,"modifylist size:"+modifylist.size());
//Logger.log(Logger.DEBUG,"droplist size:"+droplist.size());
return addColumnClauses(addlist)+
modifyColumnClauses(modifylist)+
dropColumnClauses(droplist);
}
String addColumnClauses(ArrayList list){
String result="";
for(int i=0;i<list.size();i++){
XMLTabColumn col=(XMLTabColumn)list.get(i);
result=result+col.toSQLString()+",";
}
if(!result.equals("")){
result=result.substring(0,result.length()-1);
result="ADD("+result+")"+"\n";
}
return result;
}
String modifyColumnClauses(ArrayList list){
String result="";
for(int i=0;i<list.size();i++){
XMLTabColumn col=(XMLTabColumn)list.get(i);
result=result+col.toSQLString()+",";
}
if(!result.equals("")){
result=result.substring(0,result.length()-1);
result="MODIFY("+result+")"+"\n";
}
return result;
}
/**暂时不处理*/
String modifyCollectionRetrieval(){
return "";
}
/**暂时不处理*/
String modifyLOBStorageClause(){
return "";
}
/**暂时不处理*/
String alterVarrayColStorageClause(){
return "";
}
/**暂时不处理*/
String dropColumnClauses(ArrayList list){
String result="";
for(int i=0;i<list.size();i++){
XMLTabColumn col=(XMLTabColumn)list.get(i);
result=result+col.getName()+",";
}
if(!result.equals("")){
result=result.substring(0,result.length()-1);
result="DROP("+result+")CASCADE CONSTRAINTS"+"\n";
}
return result;
}
/**不需要处理*/
String constraintClauses(){
return "";
}
/**不需要处理*/
String alterTablePartitioning(){
return "";
}
/**不需要处理*/
String alterExternalTableClauses(){
return "";
}
/**不需要处理*/
String moveTableClause(){
return "";
}
/**不需要处理*/
String enableDisableClause(){
return "";
}
/**
* 不处理TRIGGER的相关内容
* */
String lockClause(){
String lock=this.getChangedPropertyNewValue("TABLE_LOCK");
if(lock==null)
return "";
else
return lock+" "+"TABLE LOCK\n";
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -