You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by dj...@apache.org on 2006/09/03 23:09:19 UTC
svn commit: r439845 -
/db/derby/code/trunk/java/testing/org/apache/derbyTesting/junit/JDBC.java
Author: djd
Date: Sun Sep 3 14:09:19 2006
New Revision: 439845
URL: http://svn.apache.org/viewvc?view=rev&rev=439845
Log:
Improve JDBC.dropSchema to include dropping synoyms based upon JDBC metadata. Includes a workaround for DERBY-1790.
Modified:
db/derby/code/trunk/java/testing/org/apache/derbyTesting/junit/JDBC.java
Modified: db/derby/code/trunk/java/testing/org/apache/derbyTesting/junit/JDBC.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/junit/JDBC.java?view=diff&rev=439845&r1=439844&r2=439845
==============================================================================
--- db/derby/code/trunk/java/testing/org/apache/derbyTesting/junit/JDBC.java (original)
+++ db/derby/code/trunk/java/testing/org/apache/derbyTesting/junit/JDBC.java Sun Sep 3 14:09:19 2006
@@ -154,7 +154,6 @@
* way until everything can be dropped.
*
* TODO: Drop Functions
- * TODO: Drop Synonyms
*
* @param dmd DatabaseMetaData object for database
* @param schema Name of the schema
@@ -182,7 +181,14 @@
new String[] {"TABLE"});
dropUsingDMD(s, rs, schema, "TABLE_NAME", "TABLE");
-
+
+ // Synonyms - need work around for DERBY-1790 where
+ // passing a table type of SYNONYM fails.
+ rs = dmd.getTables((String) null, schema, (String) null,
+ new String[] {"AA_DERBY-1790-SYNONYM"});
+
+ dropUsingDMD(s, rs, schema, "TABLE_NAME", "SYNONYM");
+
// Finally drop the schema if it is not APP
if (!schema.equals("APP")) {
s.execute("DROP SCHEMA " + JDBC.escape(schema) + " RESTRICT");
@@ -217,8 +223,8 @@
int batchCount = 0;
while (rs.next())
{
- String view = rs.getString(mdColumn);
- s.addBatch(dropLeadIn + JDBC.escape(schema, view));
+ String objectName = rs.getString(mdColumn);
+ s.addBatch(dropLeadIn + JDBC.escape(schema, objectName));
batchCount++;
}
rs.close();