首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仅适用于新记录的Mysql默认值

问仅适用于新记录的Mysql默认值
EN

Stack Overflow用户
提问于 2016-12-23 21:55:40
回答 2查看 482关注 0票数 0

是否可以仅在mysql列中为新记录设置默认值?

如果没有输入任何内容,我希望今天之前的所有行都为null,但如果没有为该列输入任何内容,则今天之后添加的任何新行都将是一个特定的字符串。

这个是可能的吗?

EN

回答 2

Stack Overflow用户

发布于 2016-12-23 22:02:40

搜索表中的所有行并检查特定列是否为空,如果为空,则将其设置为null。

代码语言:javascript
复制
UPDATE tablename SET column = CASE column WHEN '' THEN NULL ELSE column END

对于以后的条目,您可以向表中添加一个默认约束,如下所示:

代码语言:javascript
复制
ALTER TABLE tablename ALTER column SET DEFAULT 'specific string'
票数 2
EN

Stack Overflow用户

发布于 2021-03-12 03:41:51

这是一个古老的帖子,但我确实认为这个答案可能会对其他人有所帮助。

代码语言:javascript
复制
ALTER TABLE object_table_name ADD `value` INT NULL;
ALTER TABLE object_table_name MODIFY COLUMN `value` INT DEFAULT 0;

这样做只会影响新插入的记录,这段代码对我不起作用

代码语言:javascript
复制
ALTER TABLE object_table_name ADD  `value` INT DEFAULT 0

我使用的是MySQL 5.6

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41302757

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档