• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:テーブル作成 外部参照 配列)

外部参照のテーブル作成でエラーが発生する理由とは?

このQ&Aのポイント
  • 外部参照のテーブル作成においてエラーが発生している場合、原因はSQL構文の誤りが考えられます。
  • 具体的には、エラーメッセージに示される位置や文字に注目して、スペルミスやカッコの閉じ忘れ、不正なキャストなどの可能性があります。
  • また、外部キー制約が正しく設定されているか、参照するテーブルが存在するかなども確認する必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • rucifer
  • ベストアンサー率46% (6/13)
回答No.2

申し訳ありません配列の部分を見落としていました。 配列を使った設計はあまり良いことにならないのですが、参考までに。 CREATE TABLE test( id INT2[] ); で作成できると思います。

maruchan0488
質問者

お礼

何度も すいませんでした。 そうですかぁ 配列をやめて もう一度 設計し直してみることにします。 ありがとうございました。

その他の回答 (1)

  • rucifer
  • ベストアンサー率46% (6/13)
回答No.1

参考になるとおもいますのでDDLを掲載します。 CREATE TABLE tableA ( id SERIAL NOT NULL, name TEXT, PRIMARY KEY (id) ); CREATE TABLE tableB ( bid SERIAL NOT NULL, aid INT4, PRIMARY KEY (bid) ); ALTER TABLE tableB ADD FOREIGN KEY (aid) REFERENCES tableA (id);

maruchan0488
質問者

補足

すいません 説明不足な点がありましたので 補足させていただきます。 CREATE TABLE tableA ( id SERIAL PRIMARY KEY, name TEXT, ); CREATE TABLE tableB ( bid SERIAL PRIMARY KEY, z_id integer[] constraint constname references A(id) ); 問題は、z_idが配列な所だと思っているのですが 解決策は、あるのでしょうか? そもそも この設計に問題があるのかもしれませんが・・・

関連するQ&A