Douglas 6 Denunciar post Postado Julho 9, 2005 Existe algum tipo de incompatibilidade de formato de campos da versão 4 e 4.1?Tenta executar essa query em um servidor com Mysql 4. CREATE TABLE `tblarquivos` ( `id` smallint(4) unsigned NOT NULL auto_increment, `cliente` smallint(4) unsigned NOT NULL default '0', `tipo` char(1) character set latin1 collate latin1_general_ci NOT NULL default 'D', `titulo` varchar(255) character set latin1 collate latin1_general_ci NOT NULL default '', `descricao` text character set latin1 collate latin1_general_ci NOT NULL, `dthora` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `tamanho` decimal(10,0) NOT NULL default '0', `url` varchar(100) character set latin1 collate latin1_general_ci NOT NULL default '', PRIMARY KEY (`id`), UNIQUE KEY `id` (`id`), KEY `arquivos_fk` (`cliente`), CONSTRAINT `arquivos_fk` FOREIGN KEY (`cliente`) REFERENCES `tblclientes` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='InnoDB free: 3072 kB' O código acima foi gerado com um servidor 4.1.Apresenta o erro - Error Code : 1064You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'collate latin1_general_ci NOT NULL default 'D', (511 ms taken)Retirando os 'set latin1 collate latin1_general_ci', apresenta outros erros e assim vai...Alguma forma de contornar esse problema? Se ter que instalar a versão 4 localmente? Compartilhar este post Link para o post Compartilhar em outros sites
pcsilva 0 Denunciar post Postado Julho 9, 2005 CREATE TABLE `tblarquivos` ( `id` smallint(4) unsigned NOT NULL auto_increment, `cliente` smallint(4) unsigned NOT NULL default '0', `tipo` char(1) NOT NULL default 'D', `titulo` varchar(255) NOT NULL default '', `descricao` text NOT NULL, `dthora` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `tamanho` decimal(10,0) NOT NULL default '0', `url` varchar(100) NOT NULL default '', PRIMARY KEY (`id`), UNIQUE KEY `id` (`id`), KEY `arquivos_fk` (`cliente`) ) ENGINE=InnoDB; #esta linha só pode ser executada após a criação da tabela tblclientes ALTER TABLE `tblarquivos` FOREIGN KEY (`arquivos_fk`) REFERENCES `tblclientes` (`id`) ON DELETE CASCADE ON UPDATE CASCADE para outras alterações de uma olhada nisso http://www.akadia.com/services/mysql_survival.html Compartilhar este post Link para o post Compartilhar em outros sites
Eclesiastes 2 Denunciar post Postado Julho 9, 2005 No Manual do MySQL ele fazem muita referência a versão 4.1, provavelmente é o que você imaginou ser. ;) Compartilhar este post Link para o post Compartilhar em outros sites
pcsilva 0 Denunciar post Postado Julho 9, 2005 No Manual do MySQL ele fazem muita referência a versão 4.1, provavelmente é o que você imaginou ser. ;) <{POST_SNAPBACK}> Explica mais Compartilhar este post Link para o post Compartilhar em outros sites
Eclesiastes 2 Denunciar post Postado Julho 9, 2005 A sintaxe utilizada na versão 4.1 é bastante diferente das versões anteriores, como por exemplo, o uso de relacionamentos, e etc..., com isso haverá sempre conflito se você tentar utilizar a sintaxe mais nova nas versões anteriores, obviamente. ;) Compartilhar este post Link para o post Compartilhar em outros sites
pcsilva 0 Denunciar post Postado Julho 9, 2005 Sim, agora vi seu outro post http://www.imasters.com.br/forum/index.php?showtopic=138118 Abraços Compartilhar este post Link para o post Compartilhar em outros sites