Support PostgreSQL 8.2 to Adempiere 3.1.2
This commit is contained in:
parent
28ab8fc86c
commit
4c1401ec0d
|
@ -28,7 +28,7 @@ import java.util.Vector;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
import java.util.StringTokenizer;
|
||||||
import org.compiere.util.CLogger;
|
import org.compiere.util.CLogger;
|
||||||
import org.compiere.util.DB;
|
import org.compiere.util.DB;
|
||||||
import org.compiere.util.Util;
|
import org.compiere.util.Util;
|
||||||
|
@ -1043,10 +1043,10 @@ public class Convert_PostgreSQL extends Convert_SQL92
|
||||||
* @param sqlStatement
|
* @param sqlStatement
|
||||||
* @return converted statement
|
* @return converted statement
|
||||||
*/
|
*/
|
||||||
/*
|
|
||||||
private String convertUpdate(String sqlStatement)
|
private String convertUpdate(String sqlStatement)
|
||||||
{
|
{
|
||||||
|
//return sqlStatement;
|
||||||
if(DB.isPostgreSQL())
|
if(DB.isPostgreSQL())
|
||||||
{
|
{
|
||||||
String sqlUpdate = sqlStatement;
|
String sqlUpdate = sqlStatement;
|
||||||
|
@ -1068,17 +1068,20 @@ public class Convert_PostgreSQL extends Convert_SQL92
|
||||||
//String firstPart = statement.substring(0,index);
|
//String firstPart = statement.substring(0,index);
|
||||||
|
|
||||||
begintable = sqlUpdate.indexOf(' ', 6 );
|
begintable = sqlUpdate.indexOf(' ', 6 );
|
||||||
|
|
||||||
|
|
||||||
// begin the opening ' ' begin Alias
|
// begin the opening ' ' begin Alias
|
||||||
begin = sqlUpdate.indexOf(' ', 7 );
|
begin = sqlUpdate.indexOf(' ', 7 );
|
||||||
//statement = statement.substring(begin);
|
//statement = statement.substring(begin);
|
||||||
|
|
||||||
|
|
||||||
// end Alias
|
// end Alias
|
||||||
|
|
||||||
end = sqlUpdate.toUpperCase().indexOf(" SET", 0 ); //statement.indexOf("SET", 0 )
|
end = sqlUpdate.toUpperCase().indexOf(" SET", 0 ); //statement.indexOf("SET", 0 )
|
||||||
}
|
}
|
||||||
|
|
||||||
String table = sqlUpdate.substring(begintable,begin).trim();
|
//String table = sqlUpdate.substring(begintable,begin).trim();
|
||||||
|
String table = sqlUpdate.substring(begin,end).trim();
|
||||||
|
|
||||||
String select = "";
|
String select = "";
|
||||||
|
|
||||||
|
@ -1143,12 +1146,13 @@ public class Convert_PostgreSQL extends Convert_SQL92
|
||||||
//System.out.println("rest: " + rest);
|
//System.out.println("rest: " + rest);
|
||||||
String from =s.substring( s.toUpperCase().indexOf(" FROM ") + 6);
|
String from =s.substring( s.toUpperCase().indexOf(" FROM ") + 6);
|
||||||
//System.out.println("from"+ from);
|
//System.out.println("from"+ from);
|
||||||
String tablejoin = from.substring(0,from.toUpperCase().indexOf(" "));
|
//String tablejoin = from.substring(0,from.toUpperCase().indexOf(" "));
|
||||||
|
String tablejoin = from.substring(from.toUpperCase().indexOf(" "),from.toUpperCase().indexOf(" WHERE "));
|
||||||
//System.out.println("tablejoin"+ tablejoin);
|
//System.out.println("tablejoin"+ tablejoin);
|
||||||
String tablealias = from.substring(0,from.toUpperCase().indexOf(" WHERE "));
|
String tablealias = from.substring(0,from.toUpperCase().indexOf(" WHERE "));
|
||||||
//System.out.println("tablealias"+ tablealias);
|
//System.out.println("tablealias"+ tablealias);
|
||||||
//System.out.println("------------------select.toUpperCase().substring(s_end)" +select.substring(select.substring(s_end).toUpperCase().indexOf(" WHERE ")));
|
//System.out.println("------------------select.toUpperCase().substring(s_end)" +select.substring(select.substring(s_end).toUpperCase().indexOf(" WHERE ")));
|
||||||
//String swhere = select.substring(s_end);
|
String swhere = select.substring(s_end);
|
||||||
//s_end =
|
//s_end =
|
||||||
//System.out.println();
|
//System.out.println();
|
||||||
///System.out.println("string end" + swhere);
|
///System.out.println("string end" + swhere);
|
||||||
|
@ -1233,6 +1237,7 @@ public class Convert_PostgreSQL extends Convert_SQL92
|
||||||
{
|
{
|
||||||
|
|
||||||
result = result + " " + table + "."+ word;
|
result = result + " " + table + "."+ word;
|
||||||
|
//result = result + " " + word;
|
||||||
//System.out.println("Cadena :" + word);
|
//System.out.println("Cadena :" + word);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -1291,10 +1296,10 @@ public class Convert_PostgreSQL extends Convert_SQL92
|
||||||
return sqlStatement;
|
return sqlStatement;
|
||||||
|
|
||||||
} // convertDecode
|
} // convertDecode
|
||||||
**/
|
|
||||||
|
|
||||||
// Two regex's used in convertUpdate
|
// Two regex's used in convertUpdate
|
||||||
private static final Pattern aliasPatternInUpdate =
|
/*private static final Pattern aliasPatternInUpdate =
|
||||||
Pattern.compile("(?i)\\s*UPDATE\\s+(\\S+)\\s+(\\S+)\\s+SET\\s.*");
|
Pattern.compile("(?i)\\s*UPDATE\\s+(\\S+)\\s+(\\S+)\\s+SET\\s.*");
|
||||||
private static final Pattern tupleUpdatePatternInUpdate =
|
private static final Pattern tupleUpdatePatternInUpdate =
|
||||||
Pattern.compile("(?i)\\s*UPDATE\\s+(\\S+)\\s+SET\\s+\\(([^\\)]+)\\)\\s*=\\s*\\(\\s*SELECT\\s(.*?)\\s(FROM\\s.*)");
|
Pattern.compile("(?i)\\s*UPDATE\\s+(\\S+)\\s+SET\\s+\\(([^\\)]+)\\)\\s*=\\s*\\(\\s*SELECT\\s(.*?)\\s(FROM\\s.*)");
|
||||||
|
@ -1476,7 +1481,7 @@ private String convertUpdate(String sqlStatement)
|
||||||
} // End of: Convert tuple updates with inner SELECT
|
} // End of: Convert tuple updates with inner SELECT
|
||||||
|
|
||||||
return convertedSqlStatement;
|
return convertedSqlStatement;
|
||||||
} // convertUpdate
|
} // convertUpdate */
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Converts Decode.
|
* Converts Decode.
|
||||||
|
@ -1509,7 +1514,8 @@ private String convertUpdate(String sqlStatement)
|
||||||
*/
|
*/
|
||||||
private String convertAlias(String sqlStatement)
|
private String convertAlias(String sqlStatement)
|
||||||
{
|
{
|
||||||
String statement = sqlStatement;
|
return sqlStatement;
|
||||||
|
/*String statement = sqlStatement;
|
||||||
int index = 0;
|
int index = 0;
|
||||||
int begintable = 0;
|
int begintable = 0;
|
||||||
int begin = 0;
|
int begin = 0;
|
||||||
|
@ -1567,7 +1573,7 @@ private String convertUpdate(String sqlStatement)
|
||||||
//System.out.println("begin Alias:" + begin + " end Alias:" + end );
|
//System.out.println("begin Alias:" + begin + " end Alias:" + end );
|
||||||
//System.out.println("Alias:" + statement.substring(begin, end).trim());
|
//System.out.println("Alias:" + statement.substring(begin, end).trim());
|
||||||
//System.out.println("SQL Alias:"+sqlAlias);
|
//System.out.println("SQL Alias:"+sqlAlias);
|
||||||
return sqlAlias;
|
return sqlAlias;*/
|
||||||
} // convertDelete
|
} // convertDelete
|
||||||
// end vpj-cd e-evolution 02/24/2005 PostgreSQL
|
// end vpj-cd e-evolution 02/24/2005 PostgreSQL
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Loading…
Reference in New Issue