アプリ版:「スタンプのみでお礼する」機能のリリースについて

はじめまして maruchanといいます。

外部参照のところで詰まっています。
例:
テーブルA
id primary key
name text
と言うテーブルがあるとして

CREATE TABLE B (
id PRIMARY KEY,
z_id integer[]
constraint constname references A(id)
);
ということを実行したいんですが エラーが出ます。
ERROR: syntax error at or near "cast" at character 98

なにか気づく点がありましたら 返事ください。
宜しくお願いします。

A 回答 (2件)

申し訳ありません配列の部分を見落としていました。


配列を使った設計はあまり良いことにならないのですが、参考までに。

CREATE TABLE test(
id INT2[]
);

で作成できると思います。
    • good
    • 0
この回答へのお礼

何度も すいませんでした。

そうですかぁ 配列をやめて
もう一度 設計し直してみることにします。

ありがとうございました。

お礼日時:2004/07/27 18:15

参考になるとおもいますので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);

この回答への補足

すいません 説明不足な点がありましたので
補足させていただきます。

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が配列な所だと思っているのですが
解決策は、あるのでしょうか?
そもそも この設計に問題があるのかもしれませんが・・・

補足日時:2004/07/27 17:29
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!