Для таблицы, такие как:интроспекцией IDENTITY столбцы
create table foo (id int identity primary key)
Я хотел бы запросить системные таблицы, чтобы определить, что id
в действительности является IDENTITY
колонки.
Ближе всего я нашел:
select tc.max_identity from systabcol tc
join systab t on t.table_id = tc.table_id
where t.table_name = 'foo'
К сожалению max_identity
является 0
даже для столбцов, которые не являются тождества, а также 0
тождеств, которые не были использованы еще. Было бы неплохо, если бы это было NULL
для неидентичности.
Я могу использовать функцию GET_IDENTITY
, чтобы проверить, имеет ли стол столбец IDENTITY
, но затем я теряю идентификационное значение, и я до сих пор не знаю, в каком столбце он находится.
Любая помощь очень ценится, это последнее, что мне нужно для базовой поддержки SQL Anywhere в DBIx :: Class :: Schema :: Loader в 0.05002.