Mam problem ze stworzeniem tabeli w bazie danych MySQL (uzywam PHPMyAdmin).
Najpierw stworzylem baze danych, a potem w tej bazie danych chce stworzyc kilka tabel (patrze kod ponizej).
Bez problemu moge stworzyc tabele: CUSTOMERS, PRODUCTS i PAYMENTS.
Problem pojawia sie przy probie stworzenia tabeli ORDERS.
Wyskakuje mi wtedy blad My SQL:
MySQL Error Number 1005 Can't create table
Wszystkie tabele tworze w PHPMyAdmin poprzez wklejenie ponizszego kodu tabel (pojedynczo) w zakladce SQL.
Czytalem o 3 glownych problach zwizanych z bledem 1005, ale sprawdzilem wszystko i nie widze tu zadnych bledow.
Czy moglibyscie sprawdzic czy co powoduje blad stworzenia tabeli ORDERS?
A jakis czas temu, na innym komputerze udalo mi sie stworzyc wszystkie ponizsze tabele bez zadnych problemow ani bledow.
Najpierw stworzylem baze danych, a potem w tej bazie danych chce stworzyc kilka tabel (patrze kod ponizej).
Bez problemu moge stworzyc tabele: CUSTOMERS, PRODUCTS i PAYMENTS.
Problem pojawia sie przy probie stworzenia tabeli ORDERS.
Wyskakuje mi wtedy blad My SQL:
MySQL Error Number 1005 Can't create table
Wszystkie tabele tworze w PHPMyAdmin poprzez wklejenie ponizszego kodu tabel (pojedynczo) w zakladce SQL.
Czytalem o 3 glownych problach zwizanych z bledem 1005, ale sprawdzilem wszystko i nie widze tu zadnych bledow.
Czy moglibyscie sprawdzic czy co powoduje blad stworzenia tabeli ORDERS?
A jakis czas temu, na innym komputerze udalo mi sie stworzyc wszystkie ponizsze tabele bez zadnych problemow ani bledow.
-- -----------------------------------------------------
-- Table `toy_shop`.`customers`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `toy_shop`.`customers` (
`customer_id` INT(6) NOT NULL ,
`first_name` VARCHAR(20) NOT NULL COMMENT ' ' ,
`last_name` VARCHAR(30) NOT NULL ,
`email` VARCHAR(30) NOT NULL ,
`password` CHAR(40) NOT NULL ,
`street` VARCHAR(50) NULL ,
`town` VARCHAR(50) NULL ,
`county` VARCHAR(50) NULL ,
`country` VARCHAR(50) NULL ,
PRIMARY KEY (`customer_id`) )
ENGINE = MyISAM
COMMENT = 'Customers Table';
-- -----------------------------------------------------
-- Table `toy_shop`.`products`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `toy_shop`.`products` (
`products_id` INT(6) NOT NULL ,
`name` VARCHAR(45) NOT NULL ,
`description` VARCHAR(256) NOT NULL ,
`price` DECIMAL(6,2) NOT NULL COMMENT ' ' ,
`stock` INT(6) NOT NULL DEFAULT 1 ,
`image_url` VARCHAR(256) NOT NULL ,
PRIMARY KEY (`products_id`) )
ENGINE = InnoDB
COMMENT = 'Products Table';
-- -----------------------------------------------------
-- Table `toy_shop`.`payments`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `toy_shop`.`payments` (
`payment_id` INT(6) NOT NULL ,
`credit_card_name` VARCHAR(60) NOT NULL ,
`credit_card_number` INT(16) NOT NULL ,
`cvv` INT(3) NOT NULL ,
`expiry_date` DATE NOT NULL ,
PRIMARY KEY (`payment_id`) )
ENGINE = InnoDB
COMMENT = 'Payments';
-- -----------------------------------------------------
-- Table `toy_shop`.`orders`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `toy_shop`.`orders` (
`order_id` INT(6) NOT NULL ,
`order_date` DATETIME NOT NULL ,
`customer_id` INT(6) NOT NULL ,
`delivery_method` VARCHAR(30) NULL ,
`delivery_street` VARCHAR(50) NULL ,
`delivery_town` VARCHAR(50) NULL ,
`delivery_county` VARCHAR(50) NULL ,
`delivery_country` VARCHAR(50) NULL ,
`payment_id` INT(6) NOT NULL ,
PRIMARY KEY (`order_id`) ,
INDEX `order_date` (`order_date` ASC) ,
INDEX `customer_id` (`customer_id` ASC) ,
INDEX `payment_id` (`payment_id` ASC) ,
CONSTRAINT `customer_id`
FOREIGN KEY (`customer_id` )
REFERENCES `toy_shop`.`customers` (`customer_id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `payment_id`
FOREIGN KEY (`payment_id` )
REFERENCES `toy_shop`.`payments` (`payment_id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
COMMENT = 'Orders';
-- -----------------------------------------------------
-- Table `toy_shop`.`order_details`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `toy_shop`.`order_details` (
`order_id` INT(6) NOT NULL ,
`product_id` INT(6) NOT NULL ,
`quantity` INT(6) NOT NULL ,
PRIMARY KEY (`order_id`, `product_id`) ,
INDEX `order_id` (`order_id` ASC) ,
INDEX `product_id` (`product_id` ASC) ,
CONSTRAINT `order_id`
FOREIGN KEY (`order_id` )
REFERENCES `toy_shop`.`orders` (`order_id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `product_id`
FOREIGN KEY (`product_id` )
REFERENCES `toy_shop`.`products` (`products_id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
COMMENT = 'Order Details';