mirror of
https://github.com/spring-projects/spring-framework.git
synced 2026-09-29 02:39:04 +00:00
Merge branch '6.2.x'
# Conflicts: # spring-jdbc/src/main/java/org/springframework/jdbc/core/metadata/GenericTableMetaDataProvider.java
This commit is contained in:
+9
-5
@@ -218,17 +218,21 @@ public class GenericTableMetaDataProvider implements TableMetaDataProvider {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This implementation delegates to {@link #catalogNameToUse}.
|
||||
*/
|
||||
@Override
|
||||
public @Nullable String metaDataCatalogNameToUse(@Nullable String catalogName) {
|
||||
return catalogNameToUse(catalogName);
|
||||
}
|
||||
|
||||
/**
|
||||
* This implementation delegates to {@link #schemaNameToUse}.
|
||||
* @see #getDefaultSchema()
|
||||
*/
|
||||
@Override
|
||||
public @Nullable String metaDataSchemaNameToUse(@Nullable String schemaName) {
|
||||
if (schemaName == null) {
|
||||
return schemaNameToUse(getDefaultSchema());
|
||||
}
|
||||
return schemaNameToUse(schemaName);
|
||||
return schemaNameToUse(schemaName != null ? schemaName : getDefaultSchema());
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -389,7 +393,7 @@ public class GenericTableMetaDataProvider implements TableMetaDataProvider {
|
||||
try {
|
||||
tableColumns = databaseMetaData.getColumns(
|
||||
metaDataCatalogName, metaDataSchemaName, metaDataTableName, null);
|
||||
while (tableColumns.next()) {
|
||||
while (tableColumns != null && tableColumns.next()) {
|
||||
String columnName = tableColumns.getString("COLUMN_NAME");
|
||||
int dataType = tableColumns.getInt("DATA_TYPE");
|
||||
if (dataType == Types.DECIMAL) {
|
||||
|
||||
+17
-1
@@ -19,12 +19,16 @@ package org.springframework.jdbc.core.metadata;
|
||||
import java.sql.DatabaseMetaData;
|
||||
import java.sql.SQLException;
|
||||
|
||||
import org.springframework.lang.Nullable;
|
||||
|
||||
/**
|
||||
* The PostgreSQL specific implementation of {@link TableMetaDataProvider}.
|
||||
* Supports a feature for retrieving generated keys without the JDBC 3.0
|
||||
* {@code getGeneratedKeys} support.
|
||||
* {@code getGeneratedKeys} support. Also, it processes PostgreSQL-returned
|
||||
* catalog and schema names from {@code DatabaseMetaData} in the given case.
|
||||
*
|
||||
* @author Thomas Risberg
|
||||
* @author Juergen Hoeller
|
||||
* @since 2.5
|
||||
*/
|
||||
public class PostgresTableMetaDataProvider extends GenericTableMetaDataProvider {
|
||||
@@ -34,6 +38,18 @@ public class PostgresTableMetaDataProvider extends GenericTableMetaDataProvider
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public String metaDataCatalogNameToUse(@Nullable String catalogName) {
|
||||
return catalogName;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public String metaDataSchemaNameToUse(@Nullable String schemaName) {
|
||||
return (schemaName != null ? schemaName : getDefaultSchema());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isGetGeneratedKeysSimulated() {
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user