Maison >développement back-end >tutoriel php >求大神找一下错误

求大神找一下错误

WBOY
WBOYoriginal
2016-06-06 20:29:271154parcourir

<code>CREATE DATABASE IF NOT EXISTS `shopImooc1`;
USE `shopImooc1`;
DROP TABLE IF EXISTS `imooc_admin`;
CREATE TABLE `imooc_admin` (
    `id` int(10) auto_increment  key,
    `username` varchar(20) not null unique,
    `password` char(32) not null,
    `email` varchar(50)
);

DROP TABLE IF EXISTS `imooc_cate`;
CREATE TABLE `imooc_cate` (
    `id` smallint(10) auto_increment key,
    `cName` varchar(20) unique
);

DROP TABLE IF EXISTS `imooc_pro`;
CREATE TABLE `imooc_pro` (
    `id` int(10) unique auto_increment key,
    `pNmae` varchar(50) not null unique,
    `pSn` varchar(50) not null,
    `cPrice` decimal(10,2) not null,
    `iPrice` decimal(10,2) not null,
    `pDesc` text,
    `pImg` varchar(50) not null,
    `pubImg` int not null,
    `isShows` tinyint(1) default 1,
    `isHot` tinyint(1) default 0,
    `cId` smallint not null
);


DROP TABLE IF EXISTS `imooc_user`;
CREATE TABLE `imooc_user` (
    `id` int(10) auto_increment  key,
    `username` varchar(20) not null unique,
    `password` varchar(32) not null,
    `face` varchar(50) not null,
    `regTime` int not null
);



DROP TABLE IF EXISTS `imooc_album`;
CREATE TABLE `imooc_album` (
    `id` int(10) auto_increment key,
    `pId` not null
);
</code>

运行之后出现错误

<code>[Err] 1064 - 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 'not null,
)' at line 3
[Err] CREATE DATABASE IF NOT EXISTS `shopImooc1`;
USE `shopImooc1`;
DROP TABLE IF EXISTS `imooc_admin`;
CREATE TABLE `imooc_admin` (
    `id` int(10) auto_increment  key,
    `username` varchar(20) not null unique,
    `password` char(32) not null,
    `email` varchar(50)
);

DROP TABLE IF EXISTS `imooc_cate`;
CREATE TABLE `imooc_cate` (
    `id` smallint(10) auto_increment key,
    `cName` varchar(20) unique
);

DROP TABLE IF EXISTS `imooc_pro`;
CREATE TABLE `imooc_pro` (
    `id` int(10) unique auto_increment key,
    `pNmae` varchar(50) not null unique,
    `pSn` varchar(50) not null,
    `cPrice` decimal(10,2) not null,
    `iPrice` decimal(10,2) not null,
    `pDesc` text,
    `pImg` varchar(50) not null,
    `pubImg` int not null,
    `isShows` tinyint(1) default 1,
    `isHot` tinyint(1) default 0,
    `cId` smallint not null
);


DROP TABLE IF EXISTS `imooc_user`;
CREATE TABLE `imooc_user` (
    `id` int(10) auto_increment  key,
    `username` varchar(20) not null unique,
    `password` varchar(32) not null,
    `face` varchar(50) not null,
    `regTime` int not null
);



DROP TABLE IF EXISTS `imooc_album`;
CREATE TABLE `imooc_album` (
    `id` int(10) auto_increment key,
    `pId` not null,
);
[Msg] Finished - Unsuccessfully
--------------------------------------------------
</code>

找了大半天都没找到哪里的错误 求大神指点

回复内容:

<code>CREATE DATABASE IF NOT EXISTS `shopImooc1`;
USE `shopImooc1`;
DROP TABLE IF EXISTS `imooc_admin`;
CREATE TABLE `imooc_admin` (
    `id` int(10) auto_increment  key,
    `username` varchar(20) not null unique,
    `password` char(32) not null,
    `email` varchar(50)
);

DROP TABLE IF EXISTS `imooc_cate`;
CREATE TABLE `imooc_cate` (
    `id` smallint(10) auto_increment key,
    `cName` varchar(20) unique
);

DROP TABLE IF EXISTS `imooc_pro`;
CREATE TABLE `imooc_pro` (
    `id` int(10) unique auto_increment key,
    `pNmae` varchar(50) not null unique,
    `pSn` varchar(50) not null,
    `cPrice` decimal(10,2) not null,
    `iPrice` decimal(10,2) not null,
    `pDesc` text,
    `pImg` varchar(50) not null,
    `pubImg` int not null,
    `isShows` tinyint(1) default 1,
    `isHot` tinyint(1) default 0,
    `cId` smallint not null
);


DROP TABLE IF EXISTS `imooc_user`;
CREATE TABLE `imooc_user` (
    `id` int(10) auto_increment  key,
    `username` varchar(20) not null unique,
    `password` varchar(32) not null,
    `face` varchar(50) not null,
    `regTime` int not null
);



DROP TABLE IF EXISTS `imooc_album`;
CREATE TABLE `imooc_album` (
    `id` int(10) auto_increment key,
    `pId` not null
);
</code>

运行之后出现错误

<code>[Err] 1064 - 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 'not null,
)' at line 3
[Err] CREATE DATABASE IF NOT EXISTS `shopImooc1`;
USE `shopImooc1`;
DROP TABLE IF EXISTS `imooc_admin`;
CREATE TABLE `imooc_admin` (
    `id` int(10) auto_increment  key,
    `username` varchar(20) not null unique,
    `password` char(32) not null,
    `email` varchar(50)
);

DROP TABLE IF EXISTS `imooc_cate`;
CREATE TABLE `imooc_cate` (
    `id` smallint(10) auto_increment key,
    `cName` varchar(20) unique
);

DROP TABLE IF EXISTS `imooc_pro`;
CREATE TABLE `imooc_pro` (
    `id` int(10) unique auto_increment key,
    `pNmae` varchar(50) not null unique,
    `pSn` varchar(50) not null,
    `cPrice` decimal(10,2) not null,
    `iPrice` decimal(10,2) not null,
    `pDesc` text,
    `pImg` varchar(50) not null,
    `pubImg` int not null,
    `isShows` tinyint(1) default 1,
    `isHot` tinyint(1) default 0,
    `cId` smallint not null
);


DROP TABLE IF EXISTS `imooc_user`;
CREATE TABLE `imooc_user` (
    `id` int(10) auto_increment  key,
    `username` varchar(20) not null unique,
    `password` varchar(32) not null,
    `face` varchar(50) not null,
    `regTime` int not null
);



DROP TABLE IF EXISTS `imooc_album`;
CREATE TABLE `imooc_album` (
    `id` int(10) auto_increment key,
    `pId` not null,
);
[Msg] Finished - Unsuccessfully
--------------------------------------------------
</code>

找了大半天都没找到哪里的错误 求大神指点

最后一个创建表的语句有问题:

<code class="sql">CREATE TABLE `imooc_album` (
    `id` int(10) auto_increment key,
    `pId` not null
);</code>

问题在于,没有指定pId的数据类型,改成下面这样就没问题了:

<code class="sql">DROP TABLE IF EXISTS `imooc_album`;
CREATE TABLE `imooc_album` (
    `id` int(10) auto_increment key,
    `pId` int(10) not null
);</code>
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn