gpt4 book ai didi

php - 使用php创建数据库表出错

转载 作者:行者123 更新时间:2023-11-29 13:57:19 25 4
gpt4 key购买 nike

我想使用 php (mysql_query) 在数据库中创建一个表

表具有“n”个属性。数组中有 n、n-2 个属性名称可用。

我无法解释我从哪里获取数组,但它看起来像这样- http://i.stack.imgur.com/tH98f.png

这里是生成字符串并在 mysql_queerry 中执行的代码。

    $str="CREATE TABLE $register_name(id int NOT NULL AUTO_INCREMENT, date DATE, ";
$j=0;
while($j<$i)
{
$str=$str.$roll_no[$j]." int(100), ";
$j++;

}
$str=$str."PRIMARY KEY(id))";


require('blogic.php');
$obj = new blogic();
$createtable=$obj->create($str);

当我回显 $str 时,我得到这个:

CREATE TABLE $register_name(id int NOT NULL AUTO_INCREMENT, date DATE, 913310128 int(100), 0913310129 int(100), PRIMARY KEY(id))

但是,它给出了这样的错误

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 '913310128 int(100), 0913310129 int(100), PRIMARY KEY(id))' at line 1

我不明白这个问题。当我不使用 roll_no 数组时,它工作正常..请让我知道这有什么问题。

最佳答案

来自docs :

“标识符可以以数字开头,但除非加引号,否则可能不仅仅包含数字。”

因此,您可以只引用名称:

$str=$str."`".$roll_no[$j]."` int(100), ";

或者,在其前面添加一个字母:

$str=$str."c".$roll_no[$j]." int(100), ";

关于php - 使用php创建数据库表出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15644299/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com