我只想尝试将两个变量插入表中以创建两个新列。我可以得到一个变量插入正确并创建一个新列,但努力为第二个获得正确的语法。目前有效:
mysqli_query($link,"ALTER TABLE importantdetails.extracols ADD `" . $newCol1 . "` VARCHAR(100)");
但是我无法插入$newCol2
。我已经尝试了我能想到的一切。
有什么想法吗?
由于
答案 0 :(得分:2)
要向现有表添加多个列,SQL ALTER TABLE语法为:
ALTER TABLE table_name
ADD (column_1 column-definition,
column_2 column-definition,
...
column_n column_definition);
Ex. ALTER TABLE supplier
ADD (supplier_name varchar(50),
city varchar(45));
答案 1 :(得分:1)
如果您$link
无需添加数据库名称importantdetails
,请尝试
mysqli_query($link,"ALTER TABLE extracols ADD (".$newCol1." VARCHAR(100), ".$newCol2." VARCHAR(100))");
答案 2 :(得分:0)
确保$newCol2
不是MySQL reserved word并且您正确设置了其类型。如果它也是VARCHAR(100),我能想到的唯一问题是$newCol2
是一个保留字。
如果您尝试在一个ALTER命令中添加多个列,则可以这样做:
mysqli_query($link,"ALTER TABLE importantdetails.extracols ADD ('$col1' col1_def, '$col2' col2_def));
答案 3 :(得分:0)
语法应为
mysqli_query($link,"ALTER TABLE importantdetails.extracols ADD ('".$newCol1."' VARCHAR(100), '".$newCol2."' VARCHAR(100))");
假设$ newCol2包含新列的字符串名称,并且您希望此列的类型为varchar(100)