php - MySQL,使用预准备语句插入时 DEFAULT 不起作用

标签 php mysql insert prepared-statement

我想使用准备好的语句运行插入命令,其中列应使用其默认值。

这是一张表格。

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”没有问题。

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

最佳答案

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

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

关于php - MySQL,使用预准备语句插入时 DEFAULT 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28771613/

相关文章:

MySQL 统计性别实例

mysql - 如何在Windows中为mysql分配更多内存

sql - 返回值交叉连接

php - 创建新主题后出现 Drupal 错误, undefined variable : hide_site_name and other similar error

php - 在 Javascript 中记录按钮 ID

php - 如何从 php 进行的 SQL 查询中获取值?

php - 获取 portlet 位置

C: Enqueue() - 在链表末尾插入,返回链表头

c++ - 如何将结构作为键插入 map ?

javascript - 值改变后的函数调用