Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Clayton Aparecido

erro ao tentar criar tabela mysql.

Recommended Posts


CREATE TABLE prod

(

cod varchar (135),

nome varchar (135),

desc varchar (135),

PRIMARY KEY (cod)

);


"error 1064 (42000): you gave ab erri ub your sqk syntax; check the manual."


Segue acima as linhas de código ao tentar gerar a tabela, e o erro que gerou, acabado de instalar e era para testar essa tabela.


obs: Instalação do pacote Wamp server ( suporte com apache, php, e mysql).



Pesquisando em alguns fóruns, observei que tinha aspas (`) nos nomes das colunas e nome da tabela, porem em video e livros não fala nada de aspas, e vi pessoas fazendo sem aspas.


porem ao executar o codigo com aspas como segue abaixo a tabela foi criada.


CREATE TABLE `prod`

(

`cod` varchar (135),

`nome` varchar (135),

`desc` varchar (135),

PRIMARY KEY (`cod`)

);


minha duvida, isso eh necessario ou erro, ou configuração? ( sobre as aspas)

Compartilhar este post


Link para o post
Compartilhar em outros sites

O erro se dá pelo fato de desc ser uma palavra reservada da SQL.

Faça dois testes:

//com aspas
CREATE TABLE prod
(cod varchar (135), 
nome varchar (135), 
'desc' varchar (135), 
PRIMARY KEY (cod)
);

//sem aspas
CREATE TABLE prod
(cod varchar (135), 
nome varchar (135), 
descricao varchar (135), 
PRIMARY KEY (cod)
);

PS. Cuidado ao criar chaves primárias, elas devem ser únicas, não nulas e podem ser compostas

http://paginas.fe.up.pt/~arestivo/doku/lib/exe/fetch.php/classes:slides:db:sql-ddl.pdf

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.