Várias Chaves Estrangeiras no PostgreSql

PostgreSQL

14/02/2012

Bom dia. Sou novo no fórum. Gostaria de saber como colocar duas chaves estrangeiras no postgresql. Exemplo:
CREATE TABLE tbl_pedido
(
    ped_codigo SERIAL,
    ped_codCliente INT, /*Chave Estrangeira da tabela cliente*/
    ped_codItem INT, /*Chave Estrangeira da tabela Itens*/
    PRIMARY KEY (ped_codigo)
    FOREIGN KEY ???? /*Qual é a sintaxe?*/
);


Obrigado
Carlos Botelho

Carlos Botelho

Curtidas 0

Respostas

Jair N.

Jair N.

14/02/2012

Bom Dia, muito simples você encontra essa informação em vários manuais e foruns
Mas tai... se faltar aspas é por culpa do editor...

ALTER TABLE tbl_pedido ADD CONSTRAINT fk_Clientes FOREIGN KEY (ped_codCliente) REFERENCES Clientes (codCliente) MATCH SIMPLE ON UPDATE CASCADE ON DELETE CASCADE;
ALTER TABLE tbl_pedido ADD CONSTRAINT fk_Itens FOREIGN KEY (ped_codItem ) REFERENCES Itens (codItem ) MATCH SIMPLE ON UPDATE CASCADE ON DELETE CASCADE;


Bom dia. Sou novo no fórum. Gostaria de saber como colocar duas chaves estrangeiras no postgresql. Exemplo:
CREATE TABLE tbl_pedido
(
    ped_codigo SERIAL,
    ped_codCliente INT, /*Chave Estrangeira da tabela cliente*/
    ped_codItem INT, /*Chave Estrangeira da tabela Itens*/
    PRIMARY KEY (ped_codigo)
    FOREIGN KEY ???? /*Qual é a sintaxe?*/
);


Obrigado
GOSTEI 0
Meu Paulo

Meu Paulo

14/02/2012

Tente o seguinte:

CREATE TABLE tbl_pedido
(
ped_codigo SERIAL,
ped_codCliente INT, /*Chave Estrangeira da tabela cliente*/
ped_codItem INT, /*Chave Estrangeira da tabela Itens*/
PRIMARY KEY (ped_codigo),
FOREIGN KEY (ped_codCliente) REFERENCES cliente (/*Campo a ser referenciado na tabela cliente. Exemplo: codCliente*/),
FOREIGN KEY (ped_codItem) REFERENCES itens (/*Campo a ser referenciado na tabela itens. Exemplo: codItem*/)
);
GOSTEI 0
Marisiana Battistella

Marisiana Battistella

14/02/2012

Tem mais de uma alternativa para criar a Foreign Key no PostgreSQL. Veja os exemplos:
CREATE TABLE orders (
    order_id integer PRIMARY KEY,
    product_no integer REFERENCES products (product_no),
    quantity integer
);

CREATE TABLE t1 (
  a integer PRIMARY KEY,
  b integer,
  c integer,
  FOREIGN KEY (b) REFERENCES other_table (c1)
);

CREATE TABLE t1 (
  a integer PRIMARY KEY,
  b integer,
  c integer,
  FOREIGN KEY (b, c) REFERENCES other_table (c1, c2)
);

fonte: [url]http://www.postgresql.org/docs/9.3/static/ddl-constraints.html[/url]
GOSTEI 0
POSTAR