sql - 如何清理列的值?
问题描述
在PostgreSQL数据库中,有 2 个表调用sections
和options
. 在option
表里面我有一个外键列叫做next_section
.
部分:
| ID | NAME |
|----|--------|
| 15 | Kolesa |
| 16 | Market |
选项:
| ID | TEXT | NEXT_SECTION |
|----|------|--------------|
| 1 | YES | 15 |
| 2 | NO | 16 |
我用下一个 sql 语句创建了该列:
ALTER TABLE OPTIONS
ADD COLUMN NEXT_SECTION INTEGER DEFAULT NULL,
ADD FOREIGN KEY (NEXT_SECTION)
REFERENCES SECTIONS (ID);
当我从节表中删除一些记录时,我需要清除next_section
选项表列内的值。如何修改该列?
解决方案
好吧,最后我找到了解决方案:
ALTER TABLE OPTIONS
ADD FOREIGN KEY (NEXT_SECTION)
REFERENCES SECTIONS (ID)
ON DELETE SET NULL;
推荐阅读
- java - 寻找通过字符串数组搜索重复条目的优雅方式。蛮力方法有效
- ruby-on-rails - 在尝试了许多解决方案后出现错误“您必须使用 Bundler 2 或更高版本与此锁定文件。”
- http - Web 请求来自同一个操作系统?
- excel - 代码有时会自动更正为小写字母,但它看起来不应该
- java - 从 char 数组转换字符串时忽略尾随 NULL 字符
- r - RecordLinkage:更改分析单位,如何将去重数据集中的所有链接匹配导出到一行新数据框中?
- terraform - 有没有办法防止 Terraform google_container_cluster 在没有任何变化时被破坏和重新创建?
- java - 如何找到指定接入点的频段
- rest - 使用 Rest API 将文件上传到 Google Drive:无法设置名称
- javascript - 如何使用 React Native State 管理嵌套对象