我试图使用PHP向我的MYSQL表添加一个新列。我不确定如何更改我的表,以便创建新列。在我的评估表中,我有:
assessmentid | q1 | q2 | q3 | q4 | q5
字符串
假设我有一个带有文本框的页面,我在文本框中输入q6
,然后按下一个按钮,然后表格更新为:
assessmentid | q1 | q2 | q3 | q4 | q5 | q6
型
我的代码:
<?php
mysql_query("ALTER TABLE `assessment` ADD newq INT(1) NOT NULL AFTER `q10`");
?>
<form method="post" action="">
<input type="text" name="newq" size="20">
<input type="submit" name="submit" value="Submit">
型
9条答案
按热度按时间8zzbczxx1#
您的表:
字符串
你也可以做
型
fxnxkyjh2#
字符串
您可以将
VARCHAR( 255 ) NOT NULL
更改为您想要的datatype
。ecbunoof3#
第一个月
ALTER TABLE assessment ADD q6 VARCHAR( 255 ) FIRST
个ALTER TABLE assessment ADD q6 VARCHAR( 255 ) after q5
个和更多选项here
lndjwyie4#
比如说:
字符串
我没有测试过,但应该可以工作。
jtoj6r0c5#
您应该考虑规范化数据库以避免在运行时创建列。
制作3张table:
1.评估
1.问题
将问题和评估放在各自的表格中,并通过assessment_question使用外键将它们链接在一起。
hwazgwia6#
根据你的注解,看起来你只是添加了新列if:
mysql_query("SELECT * FROM assessment");
返回false。这可能不是你想要的。尝试在第一个'if'语句中删除$sql前面的'!'。所以你的代码看起来像这样:字符串
prdp8dxp7#
对于WORDPRESS:
字符串
9rnv2umw8#
字符串
piztneat9#
PHP代码中的ALTER TABLE的问题在这一行:
mysql_query(“ALTER TABLE assessment ADD newq INT(1)NOT NULL AFTER q10”);
它应该是在q5之后,因为在你的表样本中没有q10。所以,它变成了ALTER TABLE评估ADD newq INT(1)NOT NULL AFTER q5;