Share via


IDatabaseMetaData.GetProcedureColumns(String, String, String, String) Method

Definition

Retrieves a description of the given catalog's stored procedure parameter and result columns.

[Android.Runtime.Register("getProcedureColumns", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;", "GetGetProcedureColumns_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Handler:Java.Sql.IDatabaseMetaDataInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Sql.IResultSet? GetProcedureColumns (string? catalog, string? schemaPattern, string? procedureNamePattern, string? columnNamePattern);
[<Android.Runtime.Register("getProcedureColumns", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;", "GetGetProcedureColumns_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Handler:Java.Sql.IDatabaseMetaDataInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member GetProcedureColumns : string * string * string * string -> Java.Sql.IResultSet

Parameters

catalog
String

a catalog name; must match the catalog name as it is stored in the database; "" retrieves those without a catalog; null means that the catalog name should not be used to narrow the search

schemaPattern
String

a schema name pattern; must match the schema name as it is stored in the database; "" retrieves those without a schema; null means that the schema name should not be used to narrow the search

procedureNamePattern
String

a procedure name pattern; must match the procedure name as it is stored in the database

columnNamePattern
String

a column name pattern; must match the column name as it is stored in the database

Returns

ResultSet - each row describes a stored procedure parameter or column

Attributes

Exceptions

a database error occurred.

Remarks

Retrieves a description of the given catalog's stored procedure parameter and result columns.

Only descriptions matching the schema, procedure and parameter name criteria are returned. They are ordered by PROCEDURE_CAT, PROCEDURE_SCHEM, PROCEDURE_NAME and SPECIFIC_NAME. Within this, the return value, if any, is first. Next are the parameter descriptions in call order. The column descriptions follow in column number order.

Each row in the ResultSet is a parameter description or column description with the following fields: <OL> <LI><B>PROCEDURE_CAT</B> String => procedure catalog (may be null) <LI><B>PROCEDURE_SCHEM</B> String => procedure schema (may be null) <LI><B>PROCEDURE_NAME</B> String => procedure name <LI><B>COLUMN_NAME</B> String => column/parameter name <LI><B>COLUMN_TYPE</B> Short => kind of column/parameter: <UL> <LI> procedureColumnUnknown - nobody knows <LI> procedureColumnIn - IN parameter <LI> procedureColumnInOut - INOUT parameter <LI> procedureColumnOut - OUT parameter <LI> procedureColumnReturn - procedure return value <LI> procedureColumnResult - result column in ResultSet</UL> <LI><B>DATA_TYPE</B> int => SQL type from java.sql.Types <LI><B>TYPE_NAME</B> String => SQL type name, for a UDT type the type name is fully qualified <LI><B>PRECISION</B> int => precision <LI><B>LENGTH</B> int => length in bytes of data <LI><B>SCALE</B> short => scale - null is returned for data types where SCALE is not applicable. <LI><B>RADIX</B> short => radix <LI><B>NULLABLE</B> short => can it contain NULL. <UL> <LI> procedureNoNulls - does not allow NULL values <LI> procedureNullable - allows NULL values <LI> procedureNullableUnknown - nullability unknown </UL> <LI><B>REMARKS</B> String => comment describing parameter/column <LI><B>COLUMN_DEF</B> String => default value for the column, which should be interpreted as a string when the value is enclosed in single quotes (may be null) <UL> <LI> The string NULL (not enclosed in quotes) - if NULL was specified as the default value <LI> TRUNCATE (not enclosed in quotes) - if the specified default value cannot be represented without truncation <LI> NULL - if a default value was not specified </UL> <LI><B>SQL_DATA_TYPE</B> int => reserved for future use <LI><B>SQL_DATETIME_SUB</B> int => reserved for future use <LI><B>CHAR_OCTET_LENGTH</B> int => the maximum length of binary and character based columns. For any other datatype the returned value is a NULL <LI><B>ORDINAL_POSITION</B> int => the ordinal position, starting from 1, for the input and output parameters for a procedure. A value of 0 is returned if this row describes the procedure's return value. For result set columns, it is the ordinal position of the column in the result set starting from 1. If there are multiple result sets, the column ordinal positions are implementation defined. <LI><B>IS_NULLABLE</B> String => ISO rules are used to determine the nullability for a column. <UL> <LI> YES --- if the column can include NULLs <LI> NO --- if the column cannot include NULLs <LI> empty string --- if the nullability for the column is unknown </UL> <LI><B>SPECIFIC_NAME</B> String => the name which uniquely identifies this procedure within its schema. </OL>

<B>Note:</B> Some databases may not return the column descriptions for a procedure.

The PRECISION column represents the specified column size for the given column. For numeric data, this is the maximum precision. For character data, this is the length in characters. For datetime datatypes, this is the length in characters of the String representation (assuming the maximum allowed precision of the fractional seconds component). For binary data, this is the length in bytes. For the ROWID datatype, this is the length in bytes. Null is returned for data types where the column size is not applicable.

Java documentation for java.sql.DatabaseMetaData.getProcedureColumns(java.lang.String, java.lang.String, java.lang.String, java.lang.String).

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Applies to