problema con base de datos

Iniciado por elbrujo20, 18 Octubre 2016, 05:59 AM

0 Miembros y 1 Visitante están viendo este tema.

elbrujo20

Buenas comunidad ando intentando hacer una bd pero me esta arrojando un error y por mas que le busco no encuentro la falla es es el codigo en msql quiero que el id se tipo unique pero no me deja o primary pero marca error ya le cambie a null y sigue marcando error
CREATE TABLE `proyecto`.`usuarios` ( `id` INT(10) NOT NULL AUTO_INCREMENT , `username` VARCHAR(50) NOT NULL , `password` VARCHAR(50) NOT NULL , `email` VARCHAR(100) NOT NULL , `last_login` INT(50) NOT NULL , `sec_question` INT(100) NOT NULL , `sec_answer` INT(50) NOT NULL , `role` ENUM(2) NOT NULL , PRIMARY KEY (`id`)) ENGINE = InnoDB;

El error me dice
#1604 FOR THE RIGHT SYNTAX TO USE NEAR'2)NOT NULL,PRIMARY KEY(ID) ENGINE=INNODB' ATLINE 1

Saludos

MCKSys Argentina

Hola!

No sé mucho sobre el tema, pero por el texto del error, me parece que el problema lo tienes en el campo role; el cual defines como ENUM(2). Ahora, por lo que he leído, cuando usas enum, debes colocar una lista con los valores posibles.

Un ejemplo sería:


CREATE TABLE employee_person (
    id int unsigned not null primary key,
    address varchar(60),
    phone int,
    email varchar(60),
    birthday DATE,
    sex ENUM('M', 'F'),
    m_status ENUM('Y','N'),
    s_name varchar(40),
    children int
);


Source: http://www.java2s.com/Code/SQL/Data-Type/Howtouseenum.htm

Saludos!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."