Получить список имен столбцов, входящих в состав первичного составного ключа табличного объекта (primary_key)

Назначение
 

Метод primary_key возвращает список имен столбцов, которые входят в состав первичного составного ключа табличного объекта. Является упрощенным вариантом метода primary_key_info.

Пакет

Package Linter::db

Прототип
@key_column_names = $dbh- >primary_key($catalog, $schema, $table);
Параметр Описание
$catalog  См. метод table_info (параметр не принимает шаблон для поиска)
$schema  См. метод table_info (параметр не принимает шаблон для поиска)
$table  См. метод table_info (параметр не принимает шаблон для поиска)
Возвращаемые значения
Переменная Описание
@key_column_names Список имен столбцов

Примечание

Если клиентское приложение выполняется от имени пользователя БД, который не имеет дискретного или мандатного доступа к некоторым объектам БД, то результат не будет содержать инфорацию об этих объектах.

Пример

Получить список имен столбцов, которые являются первичными ключами в рамках составного первичного ключа таблицы TEST_TABLE:

my $drh = DBI- >install_driver('Linter');
my $dbh = $drh- >connect("", "SYSTEM", "MANAGER8")
or die "Could not connect to database: " . DBI- >errstr;
$dbh- >do("create table TEST_TABLE(int_column int, smallint_column smallint, char_column char(16));");
$dbh- >do("alter table TEST_TABLE add primary key (int_column, smallint_column);");
my @pkeys = $dbh- >primary_key('', 'TEST_TABLE', '');
for (my $i = 0; $i <  scalar(@pkeys); $i++)
{
    print($pkey[$i] . "\n");
}
$dbh- >do("drop table TEST_TABLE;");
$dbh- >disconnect();