X-Git-Url: http://secure.phpeclipse.com

diff --git a/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/adapters/OracleAdapter.java b/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/adapters/OracleAdapter.java
index a01fbbf..9ecaa16 100644
--- a/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/adapters/OracleAdapter.java
+++ b/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/adapters/OracleAdapter.java
@@ -1,7 +1,9 @@
 package com.quantum.adapters;
 
+import java.util.HashMap;
+import java.util.Map;
+
 import com.quantum.Messages;
-import com.quantum.sql.SQLHelper;
 import com.quantum.util.QuantumUtil;
 
 
@@ -14,10 +16,10 @@ public class OracleAdapter extends DatabaseAdapter {
         return "SELECT SEQUENCE_OWNER, SEQUENCE_NAME FROM ALL_SEQUENCES WHERE SEQUENCE_OWNER = '" + qualifier + "'"; //$NON-NLS-1$
 	}
 	public String getPrevValue(String sequence, String owner) {
-    	return "SELECT LAST_NUMBER FROM ALL_SEQUENCES WHERE SEQUENCE_OWNER = '" + owner + "' AND SEQUENCE_NAME = '" + sequence + "'"; //$NON-NLS-1$ //$NON-NLS-2$
-	}	
+    	return "SELECT " + getQualifiedName(owner, sequence) + ".CURRVAL FROM DUAL";
+	}
 	public String getNextValue(String sequence, String owner) {
-		return "SELECT " + SQLHelper.getQualifiedName(owner, sequence) + ".NEXTVAL FROM DUAL";
+		return "SELECT " + getQualifiedName(owner, sequence) + ".NEXTVAL FROM DUAL";
 	}
 	public String getCommentsQuery(String tableName, String column) {
 		String query = "SELECT COMMENTS FROM ALL_COL_COMMENTS WHERE TABLE_NAME = '"; 
@@ -35,9 +37,13 @@ public class OracleAdapter extends DatabaseAdapter {
 	public String quote(String string, int type, String typeString) {
 		if (type == java.sql.Types.DATE || type == java.sql.Types.TIMESTAMP) {
 			string = string.trim();
-			String sub = string.substring(string.length()-2, string.length()-1);
-			if (string.length() > 1 &&  sub.equals(Messages.getString("OracleAdapter.._3"))) //$NON-NLS-1$
-				string = string.substring(0,string.length()-2);
+			// Eliminate the fractions of seconds, if present
+			if (string.length() > 1) {
+				// If the third character from the end is a dot, it means it has fractions
+				String sub = string.substring(string.length()-2, string.length()-1);
+				if ( sub.equals(Messages.getString("."))) //$NON-NLS-1$
+					string = string.substring(0,string.length()-2);
+			}
 			return "TO_DATE('" + string + "','yyyy-mm-dd hh24:mi:ss')"; //$NON-NLS-1$ //$NON-NLS-2$
 		}
 		// use the default (upper type)
@@ -65,6 +71,24 @@ public class OracleAdapter extends DatabaseAdapter {
     public String getDefaultSchema(String userid) {
         return super.getDefaultSchema(userid).toUpperCase();
     }
-  
+    
+    public Map getDefaultConnectionParameters() {
+    	Map map = new HashMap();
+    	map.put("port", "1521");
+    	map.put("hostname", "localhost");
+    	return map;
+    }
+    
 
+	/* (non-Javadoc)
+	 * @see com.quantum.adapters.DatabaseAdapter#getShowSynonymsQuery(java.lang.String, java.lang.String)
+	 */
+	public String getShowSynonymsQuery(String schema, String type) {
+		// The type string is the same as the one needed by Oracle. If it changes a switch would be needed.
+		return "select SYNONYM_NAME from ALL_SYNONYMS, ALL_OBJECTS where " +
+				" ALL_SYNONYMS.OWNER = '" + schema + "'" +
+				" and ALL_SYNONYMS.TABLE_OWNER = ALL_OBJECTS.OWNER" +
+				" and ALL_SYNONYMS.TABLE_NAME = ALL_OBJECTS.OBJECT_NAME" + 
+				" and ALL_OBJECTS.OBJECT_TYPE = '" + type + "'" ;
+		}
 }
\ No newline at end of file