7

自動インクリメント ID を機能させる方法についての洞察はありますか? 私の理解では、デフォルトで 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' }
4

1 に答える 1

11

そのようなことはサポートされていません。

整数の自動インクリメントのみを取得できます。

IDENTITY(seed, step) 列が列であることを指定する句IDENTITYIDENTITY列には、一意の自動生成値が含まれています。これらの値は、seed として指定された値から始まり、step として指定された数だけ増加します。IDENTITY列のデータ型は、または のいずれINTかでなければなりませんBIGINT

GUID の場合は、自分で生成して挿入する必要があります。

例:

CREATE TABLE your_table(
   id INT IDENTITY(1, 1)
);
于 2015-07-09T23:10:16.187 に答える