Criei 2 tabelas com relacionamentos em foreign keys, quando vou fazer a inserção de dados nelas estou com dificuldade de preencher a Fkey ,poís no mysql utiliza-se
a fução LAST_INSERT_ID() para recuperar o ID pkey de uma tabela para automaticamente preencher a outra tabela relacionada,mas no postgres não existe está função.
alguém conhece a função que faça isso?
estas são as tabeles:
-- Table: customer.phone
-- DROP TABLE customer.phone;
CREATE TABLE customer.phone
(
id integer NOT NULL DEFAULT nextval('customer.phone_id_seq'::regclass),
phone character varying(9) COLLATE pg_catalog."default" NOT NULL,
type_phone_id integer NOT NULL,
code_ddd character varying(2) COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT phone_pkey PRIMARY KEY (id),
CONSTRAINT type_phone_id_phone_fkey FOREIGN KEY (type_phone_id)
REFERENCES customer.type_phone (id) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
)
WITH (
OIDS = FALSE
)
TABLESPACE pg_default;
ALTER TABLE customer.phone
OWNER to postgres;
-- DROP TABLE customer.type_phone;
CREATE TABLE customer.type_phone
(
id integer NOT NULL DEFAULT nextval('customer.type_phone_id_seq'::regclass),
type character varying(100) COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT type_phone_pkey PRIMARY KEY (id)
)
WITH (
OIDS = FALSE
)
TABLESPACE pg_default;
ALTER TABLE customer.type_phone
OWNER to postgres;
Pergunta
Mamazica Mamazica
Olá galera, tudo bem?
Seguinte minha duvida é :
Criei 2 tabelas com relacionamentos em foreign keys, quando vou fazer a inserção de dados nelas estou com dificuldade de preencher a Fkey ,poís no mysql utiliza-se
a fução LAST_INSERT_ID() para recuperar o ID pkey de uma tabela para automaticamente preencher a outra tabela relacionada,mas no postgres não existe está função.
alguém conhece a função que faça isso?
estas são as tabeles:
-- Table: customer.phone
-- DROP TABLE customer.phone;
CREATE TABLE customer.phone
(
id integer NOT NULL DEFAULT nextval('customer.phone_id_seq'::regclass),
phone character varying(9) COLLATE pg_catalog."default" NOT NULL,
type_phone_id integer NOT NULL,
code_ddd character varying(2) COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT phone_pkey PRIMARY KEY (id),
CONSTRAINT type_phone_id_phone_fkey FOREIGN KEY (type_phone_id)
REFERENCES customer.type_phone (id) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
)
WITH (
OIDS = FALSE
)
TABLESPACE pg_default;
ALTER TABLE customer.phone
OWNER to postgres;
-- DROP TABLE customer.type_phone;
CREATE TABLE customer.type_phone
(
id integer NOT NULL DEFAULT nextval('customer.type_phone_id_seq'::regclass),
type character varying(100) COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT type_phone_pkey PRIMARY KEY (id)
)
WITH (
OIDS = FALSE
)
TABLESPACE pg_default;
ALTER TABLE customer.type_phone
OWNER to postgres;
valeu!!
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.