У меня есть список таблиц в базе данных Netezza, и я хочу получить имя первичного ключа для каждой из таблиц.
Может ли кто-нибудь предоставить мне запрос.
Вы можете использовать этот запрос.
SELECT * FROM _v_relation_keydata;
SELECT database , schema , constraintname , relation as tablename , conseq as seq , attname as columnname, * FROM _v_relation_keydata where contype='p' and schema='ADMIN' order by relation, conseq
В Netezza нет ничего вроде первичного ключа. Если вы хотите посмотреть ограничения NULL или NOT NULL для требуемой таблицы, вы можете ввести следующие команды из командной строки nzsql
\ d [YOURTABLENAME]
Ключевых (основных / внешних) концепций нет в Netezza.Но мы можем создать первичные ключи в Netezza, и это создано для синхронизации модели с внешними инструментами отчетности, такими как Informatica / Microstrategy.
Вы можете посмотреть в системном представлении _v_relation_keydata.
У нас нет primary key концепции в Netezza.Если вас беспокоят столбцы Not NULL, вам поможет следующий запрос.
primary key
Netezza
Not NULL
select * from _v_relation_column where NAME='TABLE_NAME' and ATTNOTNULL='Y';