PHP mysql 注释表

问题描述 投票:0回答:4

我正在向网站添加评论,并认为我会制作一个简单的评论表,如下所示,但它不起作用。一定是一个拼写错误,但尽管我一遍又一遍地检查并将其复制到另一个文件中等等,我还是找不到它。 对于那些熟悉评论的人来说,这些字段的数量是否足够?

$maketable = "CREATE TABLE comments(id INT NOT NULL AUTO_INCREMENT, 
 PRIMARY KEY(id),
 name VARCHAR(30),
 whenadded DATETIME,
 storyid INT,
 comment TEXT,
 show TINYINT(1),
 userid INT)";
mysql_query($maketable);
php sql comments
4个回答
2
投票

我认为'show'是mysql中的保留字。尝试“显示”或其他方法:

$maketable = "CREATE TABLE comments(id INT NOT NULL AUTO_INCREMENT, 
 PRIMARY KEY(id),
 name VARCHAR(30),
 whenadded DATETIME,
 storyid INT,
 comment TEXT,
 display TINYINT(1),
 userid INT)";
mysql_query($maketable);

0
投票

您在 php 中用于数据库连接池的凭据不应具有数据库的创建/删除权限。最好使用像 phpmyadmin 这样的“sql-tool”来进行数据库设计。

其中一个优点是为了调试目的提供更好的错误消息?


0
投票
$maketable ="CREATE TABLE  comments (
id INT( 10 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
name VARCHAR( 30 ) NOT NULL,
whenadded DATETIME,
storyid INT( 10 ),
 comment TEXT,
 display INT(1),
 userid INT ( 10 )
) ENGINE = MYISAM;"
mysql_query($maketable);

0
投票

你检查过mysql_error吗?

php.net/mysql_error

我会将 PRIMARY KEY 行移动到 sql 语句的最底部。

© www.soinside.com 2019 - 2024. All rights reserved.