Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Como faço para uma tabela referenciar uma outra tabela em uma linha, exemplo:

TABELA_EMPRESAS

nome - faturamento - funcionarios kfc - 200000 - TABELA_FUNCIONARIOS-KFC

-x-

TABELA_FUNCIONARIOS-KFC nome - cargo - salarios Joao ... Paulo

2 respostas
solução!

Ricardo,

Após a criação das tabelas você pode realizar um ALTER TABLE, por exemplo:

ALTER TABLE TABELA_EMPRESAS ADD FOREIGN KEY (ID_TABELA_FUNCIONARIOS-KFC) REFERENCES TABELA_FUNCIONARIOS-KFC(ID);

Acho que não é isso. Olá, vou mandar passo a passo tudo que eu fiz (como os resultados)...

CREATE TABLE empresas ( ID INT NOT NULL AUTO_INCREMENT primary key, nomeEmpresa VARCHAR(100) NOT NULL, faturamento double DEFAULT '0' );

INSERT INTO empresas (nomeEmpresa, faturamento) VALUES ('KFC', 200000);

SELECT * FROM empresas; +----+-------------+-------------+ | ID | nomeEmpresa | faturamento | +----+-------------+-------------+ | 1 | KFC | 200000 | +----+-------------+-------------+

CREATE TABLE funcionarios_KFC ( ID INT NOT NULL AUTO_INCREMENT primary key, nome VARCHAR(255) NOT NULL );

INSERT INTO funcionarios_KFC (nome ) VALUES ('Pedro'); INSERT INTO funcionarios_KFC (nome ) VALUES ('Paulo'); INSERT INTO funcionarios_KFC (nome ) VALUES ('Amanda'); INSERT INTO funcionarios_KFC (nome ) VALUES ('Lucio');

SELECT * FROM funcionarios_KFC; +----+--------+ | ID | nome | +----+--------+ | 1 | Pedro | | 2 | Paulo | | 3 | Amanda | | 4 | Lucio | +----+--------+

ALTER TABLE empresas ADD COLUMN funcionarios VARCHAR(255);

SELECT * FROM empresas; +----+-------------+-------------+--------------+ | ID | nomeEmpresa | faturamento | funcionarios | +----+-------------+-------------+--------------+ | 1 | KFC | 200000 | NULL | +----+-------------+-------------+--------------+

UPDATE empresas SET funcionarios = 'funcionarios_KFC';

SELECT * FROM empresas; +----+-------------+-------------+------------------+ | ID | nomeEmpresa | faturamento | funcionarios | +----+-------------+-------------+------------------+ | 1 | KFC | 200000 | funcionarios_KFC | +----+-------------+-------------+------------------+

Você me enviou isso como resposta... ALTER TABLE empresas ADD FOREIGN KEY (funcionarios_KFC) REFERENCES funcionarios_KFC(ID);

Mas na verdade eu queria algo assim:

+----+-------------+-------------+------------------+ | ID | nomeEmpresa | faturamento | funcionarios | +----+-------------+-------------+------------------+ | 1 | KFC | 200000 | funcionarios_KFC | | | | 200000 | 1 | Pedro | | | | 200000 | 2 | Paulo | | | | 200000 | 3 | Amanda | | | | 200000 | 4 | Lucio | +----+-------------+-------------+------------------+

Isso é possivel, exeite uma forma de fazer, ou alguma outra forma de fazer???

Tipo: +----+-------------+-------------+------------------+ | ID | nomeEmpresa | faturamento | funcionarios | +----+-------------+-------------+------------------+ | 1 | KFC | 200000 | funcionarios_KFC | +----+-------------+-------------+------------------+ *funcionarios_KFC ser um link para a tabela funcionarios_KFC