| title | getProcedureColumns Method (SQLServerDatabaseMetaData) |
|---|---|
| description | getProcedureColumns Method (SQLServerDatabaseMetaData) |
| author | David-Engel |
| ms.author | davidengel |
| ms.date | 01/19/2017 |
| ms.service | sql |
| ms.subservice | connectivity |
| ms.topic | reference |
| apilocation | sqljdbc.jar |
| apiname | SQLServerDatabaseMetaData.getProcedureColumns |
| apitype | Assembly |
[!INCLUDEDriver_JDBC_Download]
Retrieves a description of the stored procedure parameters and result columns.
public java.sql.ResultSet getProcedureColumns(java.lang.String sCatalog,
java.lang.String sSchema,
java.lang.String proc,
java.lang.String col)
sCatalog
A String that contains the catalog name. Providing a null to this parameter indicates that the catalog name does not need to be used.
sSchema
A String that contains the schema name pattern. Providing a null to this parameter indicates that the schema name does not need to be used.
proc
A String that contains the procedure name pattern.
col
A String that contains the column name pattern. Providing a null to this parameter returns a row for each column.
A SQLServerResultSet object.
This getProcedureColumns method is specified by the getProcedureColumns method in the java.sql.DatabaseMetaData interface.
The result set returned by the getProcedureColumns method will contain the following information:
| Name | Type | Description |
|---|---|---|
| PROCEDURE_CAT | String | The name of the database in which the specified stored procedure resides. |
| PROCEDURE_SCHEM | String | The schema for the stored procedure. |
| PROCEDURE_NAME | String | The name of the stored procedure. |
| COLUMN_NAME | String | The name of the column. |
| COLUMN_TYPE | short | The type of the column. It can be one of the following values: procedureColumnUnknown (0) procedureColumnIn (1) procedureColumnInOut (2) procedureColumnOut (4) procedureColumnReturn (5) procedureColumnResult (3) |
| DATA_TYPE | smallint | The SQL data type from java.sql.Types. |
| TYPE_NAME | String | The name of the data type. |
| PRECISION | int | The total number of significant digits. |
| LENGTH | int | The length of the data in bytes. |
| SCALE | short | The number of digits to the right of the decimal point. |
| RADIX | short | The base for numeric types. |
| NULLABLE | short | Indicates if the column can contain a null value. It can be one of the following values: procedureNoNulls (0) procedureNullable (1) procedureNullableUnknown (2) |
| REMARKS | String | The description of the procedure column. Note: [!INCLUDEssNoVersion] does not return a value for this column. |
| COLUMN_DEF | String | The default value of the column. |
| SQL_DATA_TYPE | smallint | This column is the same as the DATA_TYPE column, except for the datetime and ISO interval data types. |
| SQL_DATETIME_SUB | smallint | The datetime ISO interval subcode if the value of SQL_DATA_TYPE is SQL_DATETIME or SQL_INTERVAL. For data types other than datetime and ISO interval, this column is NULL. |
| CHAR_OCTET_LENGTH | int | The maximum number of bytes in the column. |
| ORDINAL_POSITION | int | The index of the column within the table. |
| IS_NULLABLE | String | Indicates if the column allows null values. |
| SS_TYPE_CATALOG_NAME | String | The name of the catalog that contains the user-defined type (UDT). |
| SS_TYPE_SCHEMA_NAME | String | The name of the schema that contains the user-defined type (UDT). |
| SS_UDT_CATALOG_NAME | String | The fully-qualified name user-defined type (UDT). |
| SS_UDT_SCHEMA_NAME | String | The name of the catalog where an XML schema collection name is defined. If the catalog name cannot be found, this variable contains an empty string. |
| SS_UDT_ASSEMBLY_TYPE_NAME | String | The name of the schema where an XML schema collection name is defined. If the schema name cannot be found, this is an empty string. |
| SS_XML_SCHEMACOLLECTION_CATALOG_NAME | String | The name of an XML schema collection. If the name cannot be found, this is an empty string. |
| SS_XML_SCHEMACOLLECTION_SCHEMA_NAME | String | The name of the catalog that contains the user-defined type (UDT). |
| SS_XML_SCHEMACOLLECTION_NAME | String | The name of the schema that contains the user-defined type (UDT). |
| SS_DATA_TYPE | tinyint | The [!INCLUDEssNoVersion] data type that is used by extended stored procedures. Note: For more information about the data types returned by [!INCLUDEssNoVersion], see "Data Types (Transact-SQL)" in [!INCLUDEssNoVersion] Books Online. |
Note
For more information about the data returned by the getProcedureColumns method, see "sp_sproc_columns (Transact-SQL)" in [!INCLUDEssNoVersion] Books Online.
The following example demonstrates how to use the getProcedureColumns method to return information about the uspGetBillOfMaterials stored procedure in the [!INCLUDEssSampleDBnormal] sample database.
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();
}
}
SQLServerDatabaseMetaData Members
SQLServerDatabaseMetaData Class