@@ -2201,10 +2201,11 @@ MySQL_ConnectionMetaData::getCrossReference(const sql::SQLString& primaryCatalog
2201
2201
" TABLE_NAME = A.REFERENCED_TABLE_NAME AND CONSTRAINT_TYPE IN ('UNIQUE','PRIMARY KEY') LIMIT 1) AS PK_NAME," );
2202
2202
query.append (importedKeyNotDeferrableStr);
2203
2203
query.append (" AS DEFERRABILITY FROM\n INFORMATION_SCHEMA.KEY_COLUMN_USAGE A JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS B\n "
2204
- " USING (TABLE_SCHEMA, TABLE_NAME, CONSTRAINT_NAME)\n " );
2204
+ " ON (A.TABLE_SCHEMA = B.TABLE_SCHEMA AND A.TABLE_NAME = B.TABLE_NAME AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME AND\n "
2205
+ " B.CONSTRAINT_TYPE = 'FOREIGN KEY' AND A.REFERENCED_TABLE_SCHEMA LIKE ? AND A.REFERENCED_TABLE_NAME=?\n "
2206
+ " AND A.TABLE_SCHEMA LIKE ? AND A.TABLE_NAME=?)\n " );
2205
2207
query.append (OptionalRefConstraintJoinStr);
2206
- query.append (" \n WHERE B.CONSTRAINT_TYPE = 'FOREIGN KEY' AND A.REFERENCED_TABLE_SCHEMA LIKE ? AND A.REFERENCED_TABLE_NAME=?\n "
2207
- " AND A.TABLE_SCHEMA LIKE ? AND A.TABLE_NAME=?\n ORDER BY A.TABLE_SCHEMA, A.TABLE_NAME, A.ORDINAL_POSITION" );
2208
+ query.append (" \n ORDER BY A.TABLE_SCHEMA, A.TABLE_NAME, A.ORDINAL_POSITION" );
2208
2209
2209
2210
boost::scoped_ptr< sql::PreparedStatement > pStmt (connection->prepareStatement (query));
2210
2211
pStmt->setString (1 , primarySchema);
@@ -2435,11 +2436,11 @@ MySQL_ConnectionMetaData::getExportedKeys(const sql::SQLString& catalog, const s
2435
2436
" (SELECT CONSTRAINT_NAME FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE TABLE_SCHEMA = REFERENCED_TABLE_SCHEMA AND"
2436
2437
" TABLE_NAME = A.REFERENCED_TABLE_NAME AND CONSTRAINT_TYPE IN ('UNIQUE','PRIMARY KEY') LIMIT 1) AS PK_NAME," );
2437
2438
query.append (importedKeyNotDeferrableStr);
2438
- query.append (" AS DEFERRABILITY \n FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE A JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS B\n "
2439
- " USING (TABLE_SCHEMA, TABLE_NAME, CONSTRAINT_NAME)\n " );
2439
+ query.append (" AS DEFERRABILITY FROM\n INFORMATION_SCHEMA.KEY_COLUMN_USAGE A JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS B\n "
2440
+ " ON (A.TABLE_SCHEMA = B.TABLE_SCHEMA AND A.TABLE_NAME = B.TABLE_NAME AND A.CONSTRAINT_NAME=B.CONSTRAINT_NAME AND\n "
2441
+ " B.CONSTRAINT_TYPE = 'FOREIGN KEY' AND A.REFERENCED_TABLE_SCHEMA LIKE ? AND A.REFERENCED_TABLE_NAME=?)\n " );
2440
2442
query.append (OptionalRefConstraintJoinStr);
2441
- query.append (" \n WHERE B.CONSTRAINT_TYPE = 'FOREIGN KEY' AND A.REFERENCED_TABLE_SCHEMA LIKE ? AND A.REFERENCED_TABLE_NAME=?\n "
2442
- " ORDER BY A.TABLE_SCHEMA, A.TABLE_NAME, A.ORDINAL_POSITION" );
2443
+ query.append (" ORDER BY A.TABLE_SCHEMA, A.TABLE_NAME, A.ORDINAL_POSITION\n " );
2443
2444
2444
2445
boost::scoped_ptr< sql::PreparedStatement > pStmt (connection->prepareStatement (query));
2445
2446
pStmt->setString (1 , schema);
@@ -2723,11 +2724,12 @@ MySQL_ConnectionMetaData::getImportedKeys(const sql::SQLString& catalog, const s
2723
2724
" AND CONSTRAINT_TYPE IN ('UNIQUE','PRIMARY KEY') LIMIT 1) AS PK_NAME,\n " );
2724
2725
query.append (importedKeyNotDeferrableStr);
2725
2726
query.append (" AS DEFERRABILITY FROM "
2726
- " INFORMATION_SCHEMA.KEY_COLUMN_USAGE A JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS B \n "
2727
- " USING(CONSTRAINT_NAME, TABLE_NAME) \n " );
2727
+ " INFORMATION_SCHEMA.KEY_COLUMN_USAGE A JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS B \n "
2728
+ " ON(A.CONSTRAINT_NAME = B.CONSTRAINT_NAME AND A.TABLE_NAME = B.TABLE_NAME AND \n "
2729
+ " B.CONSTRAINT_TYPE = 'FOREIGN KEY' AND A.TABLE_SCHEMA LIKE ? AND A.TABLE_NAME=? AND\n "
2730
+ " A.REFERENCED_TABLE_SCHEMA IS NOT NULL) \n " );
2728
2731
query.append (OptionalRefConstraintJoinStr);
2729
- query.append (" WHERE B.CONSTRAINT_TYPE = 'FOREIGN KEY' AND A.TABLE_SCHEMA LIKE ? AND A.TABLE_NAME=? AND A.REFERENCED_TABLE_SCHEMA \n "
2730
- " IS NOT NULL\n ORDER BY A.REFERENCED_TABLE_SCHEMA, A.REFERENCED_TABLE_NAME, A.ORDINAL_POSITION" );
2732
+ query.append (" \n ORDER BY A.REFERENCED_TABLE_SCHEMA, A.REFERENCED_TABLE_NAME, A.ORDINAL_POSITION" );
2731
2733
2732
2734
boost::scoped_ptr< sql::PreparedStatement > pStmt (connection->prepareStatement (query));
2733
2735
pStmt->setString (1 , schema);
0 commit comments