使用预准备语句插入时,MySQL,DEFAULT无法正常工作

时间:2015-02-27 18:11:12

标签: php mysql insert prepared-statement

我想使用预准备语句运行insert命令,其中列应使用其默认值。

这是一张桌子。

CREATE TABLE food (italian VARCHAR(50) NOT NULL DEFAULT 'pasta') Engine MyISAM;

以下是一些MySQL命令。

PREPARE statement FROM 'INSERT INTO food VALUES(?)';
SET @italian = DEFAULT;
EXECUTE statement USING @italian;

我在SET @italian = DEFAULT;行收到语法错误。

但是,如果我运行以下命令......

INSERT INTO food VALUES(DEFAULT);

...没有语法错误。插入'pasta'的默认值没有问题。

准备好的语句语法有什么问题?

1 个答案:

答案 0 :(得分:0)

我不知道你的目标是什么,但是:

PREPARE statement FROM 'INSERT INTO food VALUES(?)';
SET @italian = NULL;
EXECUTE statement USING @italian;