Метод getProcedureColumns (SQLServerDatabaseMetaData)
Возвращает описание параметров и столбцов результата хранимой процедуры.
Синтаксис
public java.sql.ResultSet getProcedureColumns(java.lang.String sCatalog,
java.lang.String sSchema,
java.lang.String proc,
java.lang.String col)
Параметры
sCatalog
Значение типа String, содержащее имя каталога. Задание значения NULL для этого параметра указывает на то, что имя каталога использовать не нужно.
sSchema
Значение типа String, содержащее шаблон имени схемы. Задание значения NULL для этого параметра указывает на то, что имя схемы использовать не нужно.
proc
Значение типа String, содержащее шаблон имени процедуры.
col
Значение типа String, содержащее шаблон имени столбца. Для каждого столбца возвращается строка при задании значения NULL для этого параметра.
Возвращаемое значение
Объект SQLServerResultSet.
Исключения
Замечания
Этот метод getProcedureColumns определен с помощью метода getProcedureColumns в интерфейсе java.sql.DatabaseMetaData.
Результирующий набор, возвращаемый методом getProcedureColumns, включает следующие данные:
Имя. | Тип | Описание |
---|---|---|
PROCEDURE_CAT | String | Имя базы данных, в которой находится указанная хранимая процедура. |
PROCEDURE_SCHEM | String | Схема для хранимой процедуры. |
PROCEDURE_NAME | String | Имя хранимой процедуры. |
COLUMN_NAME | String | Имя столбца. |
COLUMN_TYPE | short | Тип столбца. Может иметь одно из следующих значений. procedureColumnUnknown (0) procedureColumnIn (1) procedureColumnInOut (2) procedureColumnOut (4) procedureColumnReturn (5) procedureColumnResult (3) |
DATA_TYPE | smallint | Тип данных SQL из java.sql.Types. |
TYPE_NAME | String | Имя типа данных. |
PRECISION | int | Общее количество значащих цифр. |
LENGTH | int | Длина данных в байтах. |
МАСШТАБ | short | Количество цифр справа от десятичной запятой. |
RADIX | short | Основание системы счисления для числовых типов. |
NULLABLE | short | Указывает, может ли столбец содержать значение NULL. Может иметь одно из следующих значений. procedureNoNulls (0) procedureNullable (1) procedureNullableUnknown (2) |
ПРИМЕЧАНИЯ | String | Описание этого столбца процедуры. Примечание. SQL Server не возвращает значение для этого столбца. |
COLUMN_DEF | String | Значение по умолчанию для столбца. |
SQL_DATA_TYPE | smallint | Этот столбец содержит то же значение, что и столбец DATA_TYPE, за исключением типов данных datetime и ISO interval. |
SQL_DATETIME_SUB | smallint | Дополнительный код datetime ISO interval, если значение SQL_DATA_TYPE равно SQL_DATETIME или SQL_INTERVAL. Для типов данных, отличных от datetime и interval в стандарте ISO, это поле имеет значение NULL. |
CHAR_OCTET_LENGTH | int | Максимальный размер столбца в байтах. |
ORDINAL_POSITION | int | Индекс столбца в таблице. |
IS_NULLABLE | String | Указывает, допускает ли столбец значения NULL. |
SS_TYPE_CATALOG_NAME | String | Имя каталога, содержащего определяемый пользователем тип. |
SS_TYPE_SCHEMA_NAME | String | Имя схемы, содержащей определяемый пользователем тип. |
SS_UDT_CATALOG_NAME | String | Определяемый пользователем тип с полным именем. |
SS_UDT_SCHEMA_NAME | String | Имя каталога, в котором определено имя коллекции схем XML. Если не удается найти имя каталога, то эта переменная содержит пустую строку. |
SS_UDT_ASSEMBLY_TYPE_NAME | String | Имя схемы, в которой определено имя коллекции схем XML. Если не удается найти имя схемы, значением является пустая строка. |
SS_XML_SCHEMACOLLECTION_CATALOG_NAME | String | Имя коллекции схем XML. Если не удается найти имя, значением является пустая строка. |
SS_XML_SCHEMACOLLECTION_SCHEMA_NAME | String | Имя каталога, содержащего определяемый пользователем тип. |
SS_XML_SCHEMACOLLECTION_NAME | String | Имя схемы, содержащей определяемый пользователем тип. |
SS_DATA_TYPE | tinyint | Тип данных SQL Server, используемый расширенными хранимыми процедурами. Примечание. Дополнительные сведения о типах данных, возвращаемых SQL Server, см. в статье "Типы данных (Transact-SQL)" электронной документации на Microsoft SQL Server. |
Примечание.
Дополнительные сведения о данных, возвращаемых методом getProcedureColumns, см. в статье "sp_sproc_columns (Transact-SQL)" электронной документации на Microsoft SQL Server
Пример
В следующем примере показано, как использовать метод getProcedureColumns для возврата сведений о хранимой процедуре uspGetBillOfMaterials в образце базы данных 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();
}
}
См. также
Элементы SQLServerDatabaseMetaData
Класс SQLServerDatabaseMetaData