5
respostas

erro ao criar tabela

mysql> create database payfast
    -> use payfast
    -> CREATE TABLE `pagamentos`(
    -> `id` int(11) NOT NULL AUTO-INCREMENT,
    -> `forma_de_pagamento` varchar(255) NOT NULL,
    -> `valor` decimal(10,2) NOT NULL,
    -> `moeda` varchar(3) NOT NULL,
    -> `status` varchar(255) NOT NULL,
    -> `data` DATE,
    -> `descricao` text,
    -> PRIMARY KEY (id)
    -> );
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'use payfast
CREATE TABLE `pagamentos`(
`id` int(11) NOT NULL AUTO-INCREMENT,
`fo' at line 2
5 respostas

Luiz, boa tarde!

Isso ocorre pois a característica de auto incremento está escrita errada o correto seria: AUTO_INCREAMENT e não AUTO-INCREAMENT

Espero ter ajudado e bons estudos!

mesmo assim o erro continua

mysql> create database payfast
    -> use payfast
    -> CREATE TABLE pagamentos (
    -> `id` int(11) NOT NULL AUTO_INCREAMENT,
    -> `forma_de_pagamento` varchar(255) NOT NULL,
    -> `valor` decimal(10,2) NOT NULL,
    -> `moeda` varchar(3) NOT NULL,
    ->  `status` varchar(255) NOT NULL,
    ->  `data` DATE,
    ->  `descricao` NOT NULL,
    -> PRIMARY KEY (id)
    ->  );
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'use payfast
CREATE TABLE pagamentos (
`id` int(11) NOT NULL AUTO_INCREAMENT,
`fo' at line 2
mysql>

quando eu tiro o`descricao` NOT NULL, ele funciona, o que está errado neste campo ?

Luiz, boa tarde!

Alguns pontos, que eu testei e funcionou:

  • id int(11) NOT NULL AUTO_INCREMENT (INCREMENT sem o A);
    • Após o use payfast adicionar ;
    • No campo de descrição você esqueceu de colocar o tipo de dado que vai ser (varchar, integer, boolean etc.)

Após feitas as alterações, ficará assim:

REATE TABLE pagamentos (
     `id` int(11) NOT NULL AUTO_INCREMENT,
     `forma_de_pagamento` varchar(255) NOT NULL,
     `valor` decimal(10,2) NOT NULL,
     `moeda` varchar(3) NOT NULL,
      `status` varchar(255) NOT NULL,
      `data` DATE,
      `descricao` varchar(50) NOT NULL,
     PRIMARY KEY (id)
      )

Espero ter ajudado e bons estudos!

Luiz, boa tarde!

Caso tenha ajudado não esqueça de marcar como solução para alcançar mais alunos!