Método getProcedureColumns (SQLServerDatabaseMetaData)
Recupera una descripción de los parámetros de procedimiento almacenado y de las columnas de resultados.
Sintaxis
public java.sql.ResultSet getProcedureColumns(java.lang.String sCatalog,
java.lang.String sSchema,
java.lang.String proc,
java.lang.String col)
Parámetros
sCatalog
Objeto String que contiene el nombre del catálogo. Si se proporciona un valor NULL en este parámetro, indicará que no es necesario utilizar el nombre de catálogo.
sSchema
Objeto String que contiene el modelo de nombre del esquema. Si se proporciona un valor NULL en este parámetro, indicará que no es necesario utilizar el nombre de esquema.
proc
Objeto String que contiene el modelo de nombre del procedimiento.
col
Objeto String que contiene el patrón de nombre de columna. Si se proporciona un valor NULL en este parámetro, devolverá una fila para cada columna.
Valor devuelto
Objeto SQLServerResultSet.
Excepciones
Observaciones
El método getProcedureColumns especifica este método getProcedureColumns en la interfaz java.sql.DatabaseMetaData.
El conjunto de resultados devuelto por el método getProcedureColumns contendrá la siguiente información:
Nombre | Escribir | Descripción |
---|---|---|
PROCEDURE_CAT | String | Nombre de la base de datos en la que reside el procedimiento almacenado. |
PROCEDURE_SCHEM | String | Esquema para el procedimiento almacenado. |
PROCEDURE_NAME | String | Nombre del procedimiento almacenado. |
COLUMN_NAME | String | El nombre de la columna. |
COLUMN_TYPE | short | El tipo de la columna. Puede ser uno de los siguientes valores: procedureColumnUnknown (0) procedureColumnIn (1) procedureColumnInOut (2) procedureColumnOut (4) procedureColumnReturn (5) procedureColumnResult (3) |
DATA_TYPE | smallint | Tipo de datos SQL de java.sql.Types. |
TYPE_NAME | String | El nombre del tipo de datos. |
PRECISION | int | Número total de dígitos significativos. |
LENGTH | int | La longitud de los datos, en bytes. |
SCALE | short | Número de dígitos que se encuentran a la derecha del separador decimal. |
RADIX | short | Base de tipos numéricos. |
NULLABLE | short | Indica si la columna puede contener un valor NULL. Puede ser uno de los siguientes valores: procedureNoNulls (0) procedureNullable (1) procedureNullableUnknown (2) |
COMENTARIOS | String | Descripción de esta columna de procedimientos. Nota: SQL Server no devuelve ningún valor relativo a esta columna. |
COLUMN_DEF | String | Valor predeterminado de la columna. |
SQL_DATA_TYPE | smallint | Esta columna es igual que la columna DATA_TYPE, salvo por los tipos de datos datetime e interval de ISO. |
SQL_DATETIME_SUB | smallint | El subcódigo datetime ISO interval si el valor de SQL_DATA_TYPE es SQL_DATETIME o SQL_INTERVAL. Para tipos de datos distintos de datetime e interval de ISO, esta columna es NULL. |
CHAR_OCTET_LENGTH | int | Número máximo de bytes en la columna. |
ORDINAL_POSITION | int | Índice de la columna en la tabla. |
IS_NULLABLE | String | Indica si la columna admite valores NULL. |
SS_TYPE_CATALOG_NAME | String | Nombre del catálogo que contiene el tipo definido por el usuario (UDT). |
SS_TYPE_SCHEMA_NAME | String | Nombre del esquema que contiene el tipo definido por el usuario (UDT). |
SS_UDT_CATALOG_NAME | String | Tipo definido por el usuario (UDT) del nombre completo. |
SS_UDT_SCHEMA_NAME | String | Nombre del catálogo donde se define el nombre de una colección de esquemas XML. Si no se encuentra el nombre de catálogo, esta variable contiene una cadena vacía. |
SS_UDT_ASSEMBLY_TYPE_NAME | String | Nombre del esquema donde se define el nombre de una colección de esquemas XML. Si no se puede encontrar el nombre de esquema, esta cadena estará vacía. |
SS_XML_SCHEMACOLLECTION_CATALOG_NAME | String | Nombre de una colección de esquemas XML. Si no se puede encontrar el nombre, esta cadena estará vacía. |
SS_XML_SCHEMACOLLECTION_SCHEMA_NAME | String | Nombre del catálogo que contiene el tipo definido por el usuario (UDT). |
SS_XML_SCHEMACOLLECTION_NAME | String | Nombre del esquema que contiene el tipo definido por el usuario (UDT). |
SS_DATA_TYPE | tinyint | Tipo de datos de SQL Server que utilizan los procedimientos almacenados extendidos. Nota: para obtener más información sobre los tipos de datos que devuelve SQL Server, consulte tipo de datos «Tipos de datos (Transact-SQL)» en los Libros en pantalla de SQL Server. |
Nota
Para obtener más información sobre los datos que devuelve el método getProcedureColumns, consulte «sp_sproc_columns (Transact-SQL)» en la documentación en los Libros en pantalla de SQL Server.
Ejemplo
En el ejemplo siguiente se muestra cómo usar el método getProcedureColumns para devolver información sobre el procedimiento almacenado uspGetBillOfMaterials en la base de datos de ejemplo AdventureWorks2022.
public static void executeGetProcedureColumns(Connection con) {
try {
DatabaseMetaData dbmd = con.getMetaData();
ResultSet rs = dbmd.getProcedureColumns(null, null, "uspGetBillOfMaterials", null);
ResultSetMetaData rsmd = rs.getMetaData();
// Display the result set data.
int cols = rsmd.getColumnCount();
while(rs.next()) {
for (int i = 1; i <= cols; i++) {
System.out.println(rs.getString(i));
}
}
rs.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
Consulte también
Miembros SQLServerDatabaseMetaData
Clase SQLServerDatabaseMetaData