Heim > Backend-Entwicklung > PHP-Tutorial > 求大神找一下错误

求大神找一下错误

WBOY
Freigeben: 2016-06-06 20:29:27
Original
1152 Leute haben es durchsucht

<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>
Nach dem Login kopieren
Nach dem Login kopieren

运行之后出现错误

<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>
Nach dem Login kopieren
Nach dem Login kopieren

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

回复内容:

<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>
Nach dem Login kopieren
Nach dem Login kopieren

运行之后出现错误

<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>
Nach dem Login kopieren
Nach dem Login kopieren

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

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

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

问题在于,没有指定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>
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage