I'm struggling to code this table as it's giving me a #1064 error, and this corresponds to a few potential issues. If someone could point out where I've made a mistake that would be great.
Here is an image of the code I've typed, and the error I've received:
The code:
CREATE TABLE `RENRMyLUoX`.`movie`(
`mID` INT(20) NOT NULL,
`title` VARCHAR(50) NULL DEFAULT NULL,
`relYear` YEAR(4) NULL DEFAULT NULL,
`category` VARCHAR(50) NULL DEFAULT NULL,
`runTime` INT(20) NOT NULL,
`studioName` VARCHAR(50) NULL DEFAULT NULL,
`description` VARCHAR(50) NULL DEFAULT NULL,
`rating` DOUBLE(20) NULL DEFAULT NULL,
PRIMARY KEY(`mID`(20))
) ENGINE = InnoDB CHARSET = latin1 COLLATE latin1_bin;
CodePudding user response:
The DOUBLE
datatype should be specified as either DOUBLE
or DOUBLE(m, d)
. I don't understand what (20)
is supposed to do... you can simply omit it:
rating DOUBLE NULL DEFAULT NULL,
CodePudding user response:
TRY BELOW CODE
CREATE TABLE RENRMyLUoX
.movie
(
mID
INT(20) NOT NULL,
title
VARCHAR(50) NULL DEFAULT NULL,
relYear
YEAR(4) NULL DEFAULT NULL,
category
VARCHAR(50) NULL DEFAULT NULL,
runTime
INT(20) NOT NULL,
studioName
VARCHAR(50) NULL DEFAULT NULL,
description
VARCHAR(50) NULL DEFAULT NULL,
rating
DOUBLE(20) NULL DEFAULT NULL)ENGINE = InnoDB CHARSET = latin1 COLLATE latin1_bin;
ALTER TABLE RENRMyLUoX
.movie
ADD PRIMARY KEY (mID
)
ALTER TABLE RENRMyLUoX
.movie
MODIFY mID
int(20) NOT NULL AUTO_INCREMENT;
COMMIT;