MySQL使用默认值添加列,使用QUOTES语法

时间:2015-11-23 07:17:47

标签: php mysql

我对mySql做得很好,但是当遇到一些怪癖时,我很震惊。

这是我多年来成功使用的东西

$sql = "ALTER TABLE " . $Tablu . " ADD " . $Colu . " varchar(" . intVal($Siza) .")";

我现在想要的只是为我要添加的新列添加DEFAULT值。 请提供具有查询的现有结构的语法。那就是THE QUOTES

我正在尝试这个

$sql = "ALTER TABLE " . $Tablu . " ADD " . $Colu . " varchar(" . intVal($Siza) .") DEFAULT ('" . $defa . "')";

但它不起作用

我根本无法理解没有引用的mysql游戏。

提前致谢

4 个答案:

答案 0 :(得分:4)

你查询是好的..你只需要删除$ defa周围的那些括号()就像这样 -

$sql = "ALTER TABLE " . $Tablu . " ADD " . $Colu . " varchar(" . intVal($Siza) .") DEFAULT '" . $defa . "'";

答案 1 :(得分:0)

这可能是正确的方法。

$sql = "ALTER TABLE " . $Tablu . " ADD " . $Colu . " varchar(" . intVal($Siza) ." DEFAULT 'default_value')";

答案 2 :(得分:0)

您可以使用

在引号中设置默认值

SET DEFAULT 'value'SET DEFAULT NULL

您的查询就像

$sql = "ALTER TABLE " . $Tablu . " ADD " . $Colu . " varchar(" . intVal($Siza) .")" . " SET DEFAULT " . $defa;

答案 3 :(得分:0)

试试这个

$size = intVal($Siza);
$sql = "ALTER TABLE {$Tablu} ADD {$Colu} VARCHAR({$size}) DEFAULT '{$defa}'";