Insert

Bem, estou com um problema não estou conseguindo inserir um linha em uma tabela que contém uma chave estrangeira de outra tabela exemplo

Tabela titulo: Tabela editor:

Titulo editorID//chave primaria
isbn editorNome
titulo
numeroEdicao
copyright
editorID //chave estrangeira
imagem
preco

como eu faço para inserir dados na tabela titulo…?

mas tua tabela tem dois campos editorId?

Posta ae pra gente como estão tuas classes, fica melhor pra te ajudarmos…

:thumbup:

Ai cara a estrutura das tabelas:

Tabela titulo:

Titulo

isbn
titulo
numeroEdicao
copyright
editorID //chave estrangeira
imagem
preco

Editor:

editorID//chave primaria
editorNome

Estou tentando dar um insert into na tabela Editor
mas não estou onseguindo o erro que me gera e esse:

Cannot add or update a child row: a foreign key constraint fails (books/titles, CONSTRAINT titles_ibfk_1 FOREIGN KEY (publisherID) REFERENCES publishers (publisherID))

o codígo das tabela:

CREATE TABLE publishers (
	publisherID INT NOT NULL AUTO_INCREMENT,
	publisherName varchar (30) NOT NULL,
	PRIMARY KEY (publisherID)
) TYPE=INNODB
;
CREATE TABLE titles (
	isbn varchar (20) NOT NULL,
	title varchar (100) NOT NULL,
	editionNumber INT NOT NULL,
	copyright varchar (4) NOT NULL,
	publisherID INT NOT NULL,
	imageFile varchar (20) NOT NULL,
	price REAL NOT NULL,
	PRIMARY KEY (isbn),
	INDEX (publisherID),
	FOREIGN KEY (publisherID) REFERENCES publishers(publisherID)
) TYPE=INNODB
;

um exemplo básico pra usar chave estrangeira

CREATE TABLE EMPRESA
(
  ID        NUMBER(11),
  FANTASIA  VARCHAR2(50 BYTE),
  NOME      VARCHAR2(100 BYTE),
  ENDERECO  VARCHAR2(50 BYTE),
  BAIRRO    VARCHAR2(50 BYTE),
  ESTADO    VARCHAR2(2 BYTE)
);

ALTER TABLE EMPRESA ADD (  CONSTRAINT PK_ID PRIMARY KEY (ID)); [/code]


[code]CREATE TABLE PRODUTOS
(
  ID          NUMBER(11),
  ID_EMPRESA  NUMBER(11),
  NOME        VARCHAR2(50 BYTE),
  DESCRICAO   VARCHAR2(150 BYTE),
  DATA        DATE
);

ALTER TABLE PRODUTOS ADD (  CONSTRAINT PK_IDPRODUTO PRIMARY KEY (ID)); 

ALTER TABLE PRODUTOS ADD (  CONSTRAINT FK_ID_EMPRESA  FOREIGN KEY (ID_EMPRESA)  REFERENCES EMPRESA (ID));

Abraços, qualquer dúvida posta ae!

[quote=Puppets]Estou tentando dar um insert into na tabela Editor
mas não estou onseguindo o erro que me gera e esse:

Cannot add or update a child row: a foreign key constraint fails (books/titles, CONSTRAINT titles_ibfk_1 FOREIGN KEY (publisherID) REFERENCES publishers (publisherID))

[/quote]

Olá
Tem certeza que este erro está acontecendo quando você tenta inserir algo na tabela Editor? Esse problema geralmente acontece quando você tenta alterar ou excluir uma linha da tabela mãe que esta sendo referenciada em algum registro da tabela filha. Se não me engano é o erro 1216 do mysql.

Valew Veronicaaa

é isso mesmo…!

Ola td bemm

Cannot add or update a child row: a foreign key constraint fails (books/titles, CONSTRAINT titles_ibfk_1 FOREIGN KEY (publisherID) REFERENCES publishers (publisherID))

Eu gostaria de participar sobre este insert , kra favor faz isso retirar o   property=id  da paginas referente a table titles e tb na hora de fazer save(Objeto);

Concerteza vai funfun,
Valeu