Compartir a través de


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

Un 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

Un 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

Un String que contiene el patrón de nombre del procedimiento.

col

Un String que contiene el patrón de nombre de la columna. Si se proporciona un valor NULL en este parámetro, devolverá una fila para cada columna.

Valor devuelto

Un objeto SQLServerResultSet.

Excepciones

SQLServerException

Notas

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 Type 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

Nombre de columna.

COLUMN_TYPE

short

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

Nombre del tipo de datos.

PRECISION

int

Número total de dígitos significativos.

LENGTH

int

Longitud de los datos, en bytes.

SCALE

short

Número de dígitos a la derecha del signo 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)

REMARKS

String

Descripción de esta columna de procedimientos.

Nota

SQL Server no devuelve ningún valor para 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 interval de ISO si el valor de SQL_DATA_TYPE es SQL_DATETIME o SQL_INTERVAL. Para otros 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 ha devuelto SQL Server, vea "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, vea "sp_sproc_columns (Transact-SQL)" en los Libros en pantalla de SQL Server.

Ejemplo

En el siguiente ejemplo se muestra cómo utilizar el método getProcedureColumns para devolver información sobre el procedimiento almacenado uspGetBillOfMaterials en la base de datos de ejemplo SQL Server 2005 AdventureWorks.

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();
   }
}

Vea también

Referencia

Clase SQLServerDatabaseMetaData

Conceptos

Miembros SQLServerDatabaseMetaData