Está acontecendo esse erro direto, o que pode ser?
Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 6
SQL Code:
ALTER TABLE `Loja`.`Telefone`
COLLATE = DEFAULT ,
CHANGE COLUMN `Telefone` `Telefone` DOUBLE NOT NULL ,
DROP PRIMARY KEY,
ADD PRIMARY KEY (`Telefone`, `CodCliente`),
ADD INDEX `fk_Telefone_Cliente_idx` (`CodCliente` ASC) VISIBLE
O código completo do meu banco de dados:
-- MySQL Workbench Forward Engineering
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
-- -----------------------------------------------------
-- Schema Loja
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema Loja
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `Loja` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
USE `Loja` ;
-- -----------------------------------------------------
-- Table `Loja`.`Cliente`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Loja`.`Cliente` (
`CodCliente` INT(10) NOT NULL,
`NomeCliente` VARCHAR(60) NOT NULL,
`Logradouro` VARCHAR(100) NOT NULL,
`Numero` VARCHAR(5) NULL DEFAULT NULL,
`Complemento` VARCHAR(5) NULL DEFAULT NULL,
`Bairro` VARCHAR(100) NOT NULL,
`CEP` DOUBLE NOT NULL,
`Cidade` VARCHAR(50) NOT NULL,
`UF` VARCHAR(2) NOT NULL,
PRIMARY KEY (`CodCliente`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_unicode_ci;
-- -----------------------------------------------------
-- Table `Loja`.`Telefone`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Loja`.`Telefone` (
`Telefone` DOUBLE NOT NULL,
`CodCliente` INT(10) NOT NULL,
PRIMARY KEY (`Telefone`, `CodCliente`),
INDEX `fk_Telefone_Cliente_idx` (`CodCliente` ASC) VISIBLE,
CONSTRAINT `fk_Telefone_Cliente`
FOREIGN KEY (`CodCliente`)
REFERENCES `Loja`.`Cliente` (`CodCliente`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `Loja`.`Pedido`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Loja`.`Pedido` (
`NumPedido` INT(10) NOT NULL,
`DataPedido` DATETIME NOT NULL,
`ValorPedido` DECIMAL(15,2) NOT NULL,
PRIMARY KEY (`NumPedido`),
CONSTRAINT `fk_Pedido_Cliente1`
FOREIGN KEY (`NumPedido`)
REFERENCES `Loja`.`Cliente` (`CodCliente`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `Loja`.`Produto`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Loja`.`Produto` (
`CodigoProduto` INT(10) NOT NULL,
`NomeProduto` VARCHAR(100) NOT NULL,
`ValorProduto` DECIMAL(15,2) NOT NULL,
PRIMARY KEY (`CodigoProduto`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `Loja`.`Item_Pedido`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Loja`.`Item_Pedido` (
`NumPedido` INT(10) NOT NULL,
`CodigoProduto` INT(10) NOT NULL,
`Quantidade` VARCHAR(100) NOT NULL,
PRIMARY KEY (`NumPedido`, `CodigoProduto`),
INDEX `fk_Item_Pedido_Produto1_idx` (`CodigoProduto` ASC) VISIBLE,
CONSTRAINT `fk_Item_Pedido_Pedido1`
FOREIGN KEY (`NumPedido`)
REFERENCES `Loja`.`Pedido` (`NumPedido`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Item_Pedido_Produto1`
FOREIGN KEY (`CodigoProduto`)
REFERENCES `Loja`.`Produto` (`CodigoProduto`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
Fiz no Workbench mysql. Isso acontece quando adiciono uma Foreing Key, se eu não adiciono ela, ai dá certo.