Redshift - неподдерживаемый тип "serial" для идентификатора автоинкремента с node-orm-2
Любое понимание того, как получить автоматический идентификатор приращения работает? Насколько я понимаю, столбец id добавлен по умолчанию; однако из-за того, что я использую Redshift, "серийный" тип по умолчанию не будет работать, поскольку он не поддерживается.
{ [error: Column "probe.id" has unsupported type "serial".]
name: 'error',
length: 165,
severity: 'ERROR',
code: '0A000',
detail: undefined,
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: '/home/awsrsqa/padb/src/pg/src/backend/parser/parser_analyze.c',
line: '3600',
routine: 'transformColumnDefinition',
model: 'probe' }
1 ответ
Ничего подобного не поддерживается.
Вы можете получить автоинкремент только для целого числа:
IDENTITY(seed, step)
Пункт, который указывает, что столбец являетсяIDENTITY
колонка.IDENTITY
столбец содержит уникальные автоматически сгенерированные значения. Эти значения начинаются со значения, указанного как начальное значение, и увеличиваются на число, указанное как шаг. Тип данных дляIDENTITY
столбец должен быть либоINT
или жеBIGINT
,
Для GUID вы должны сгенерировать его и вставить его самостоятельно.
Пример:
CREATE TABLE your_table(
id INT IDENTITY(1, 1)
);