gpt4 book ai didi

mysql - 插入新行时如何在列中设置默认值 0

转载 作者:行者123 更新时间:2023-11-29 12:33:57 25 4
gpt4 key购买 nike

我有一个用户表,其中有许多下载列,对于新行,我如何将其初始化为 0。我只希望当我触发另一个表中的事件时它会发生变化。

最佳答案

您可以使用 create table 语句中的默认语句将其设置为 0:

create table . . .
numdownloads int default 0

您还可以在创建表后使用 alter table 语句来执行此操作。

但是,您实际上并不需要这样做。在您的触发器中,您可以执行以下操作:

update user
set numdownloads = coalesce(numdownloads, 0) + 1

增加值。

拉取数据时,可以使用coalesce()NULL转为0:

select . . . , coalesce(numdownloads, 0) as numdownloads
from user

编辑:

要阻止用户插入任何值,请使用插入触发器。或者,只需在需要时计算该值,而不是将其存储为计数器。

关于mysql - 插入新行时如何在列中设置默认值 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27078764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com