mysql update default_准备具有DEFAULT值的MySQL INSERT / UPDATE语句

引用MySQL INSERT手册-UPDATE也一样:

使用关键字DEFAULT可以将列明确设置为其默认值。这使编写INSERT语句(为少数几个列分配值)更加容易,因为它使您避免编写不完整的VALUES列表,该列表不包含表中每个列的值。否则,您将不得不写出与VALUES列表中的每个值相对应的列名列表。

简而言之,如果我写

INSERT INTO table1 (column1,column2) values ('value1',DEFAULT);

插入新的一列,并将column2设置为其默认值(无论它是多少)。

但是,如果我准备并执行PHP语句:

$statement = $pdoObject->

prepare("INSERT INTO table1 (column1,column2) values (?,?)");

$statement->execute(array('value1','DEFAULT'));

如果该列能够存储文本值,则新行将包含“ DEFAULT”作为其文本值。

现在,我已经为PDO编写了一个抽象层(我需要它),为了解决这个问题,我正在考虑引入一个

const DEFAULT_VALUE = "randomstring";

所以我可以执行这样的语句:

$statement->execute(array('value1',mysql::DEFAULT_VALUE));

然后在执行绑定的方法中,我将检查发送给绑定的值,如果某些值等于self::DEFAULT_VALUE,则相应地执行操作。

我敢肯定,有更好的方法可以做到这一点。有人遇到过类似情况吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值