chave estrangeira - FOREIGN KEY
Fala pessoal, estou com uma dificuldade em setar uma chave estrangeira, não sei qual a configuração está errada na tabela que é exibido o seguinte erro: Error creating foreign key on controleID (check data types) segue as configurações da tabela e o comando:
ALTER TABLE empresas ADD FOREIGN KEY ( controleID ) REFERENCES sys.usuarios (
id
) ON [DELETE](http://www.raveweb.com.br:2082/cpsess7060010989/3rdparty/phpMyAdmin/url.php?url=http%3A%2F%2Fdev.mysql.com%2Fdoc%2Frefman%2F5.5%2Fen%2Fdelete.html&token=d4999e1c8f97f5cc46fbd0a23af81c9a) CASCADE ON [UPDATE](http://www.raveweb.com.br:2082/cpsess7060010989/3rdparty/phpMyAdmin/url.php?url=http%3A%2F%2Fdev.mysql.com%2Fdoc%2Frefman%2F5.5%2Fen%2Fupdate.html&token=d4999e1c8f97f5cc46fbd0a23af81c9a) CASCADE ;
CREATE TABLE IF NOT EXISTS `usuarios` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`nome` varchar(50) CHARACTER SET latin1 NOT NULL,
`usuario` varchar(25) CHARACTER SET latin1 NOT NULL,
`senha` varchar(40) CHARACTER SET latin1 NOT NULL,
`email` varchar(100) CHARACTER SET latin1 NOT NULL,
`nivel` int(1) unsigned NOT NULL DEFAULT '1',
`ativo` tinyint(1) NOT NULL DEFAULT '1',
`cadastro` datetime NOT NULL,
`telefone` varchar(13) COLLATE latin1_general_ci DEFAULT NULL,
`profissao` varchar(50) COLLATE latin1_general_ci NOT NULL,
`sobre` text COLLATE latin1_general_ci NOT NULL,
`site` varchar(50) COLLATE latin1_general_ci NOT NULL DEFAULT 'http://',
`twitter` varchar(50) COLLATE latin1_general_ci NOT NULL DEFAULT 'https://twitter.com/',
`facebook` varchar(50) COLLATE latin1_general_ci NOT NULL DEFAULT 'https://facebook.com/',
`imagem` varchar(70) COLLATE latin1_general_ci NOT NULL,
`recupera_senha` varchar(40) COLLATE latin1_general_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `usuario` (`usuario`),
UNIQUE KEY `id` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `empresas` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`razaoSocial` varchar(70) COLLATE latin1_general_ci NOT NULL,
`nomeFantasia` varchar(70) COLLATE latin1_general_ci NOT NULL,
`telefone` varchar(13) COLLATE latin1_general_ci NOT NULL,
`email` varchar(100) COLLATE latin1_general_ci NOT NULL,
`cnpj` varchar(18) COLLATE latin1_general_ci NOT NULL,
`info` text COLLATE latin1_general_ci NOT NULL,
`estoque` int(1) NOT NULL,
`controleID` int(15) NOT NULL,
PRIMARY KEY (`id`),
KEY `controleID` (`controleID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1 ;
desde já agradeço a ajuda.
Discussão (3)
Carregando comentários...