mysql - 无法为列设置默认值
问题描述
我无法为表中的列设置默认值。我看到很多例子,但我无法解决我的问题。我有两列的表:id,name。我需要,如果 id == null,则设置默认值。
ALTER TABLE my_table ALTER id SET DEFAULT nextval('val_seq')
INSERT INTO my_table (id, name) VALUES (null, 'test_name')
我收到错误:null value in column "id" violates not-null constant. How fixed this?
解决方案
尽量不要在插入语句中包含要使用默认值的列。
INSERT INTO my_table (name) VALUES ('test_name')
如果未指定其他值,则默认约束将为列提供默认值。
推荐阅读
- .htaccess - 未找到 Ads.txt - 为 https 重定向正确配置 htaccess
- python - Python、多处理和内存:它是如何工作的?
- java - android studio - 如何停止可运行?
- r - 正则表达式匹配 R 中的日期
- java - 如何在android中获取桌面版网站的内容?
- css - 用户菜单导航背景颜色的 CSS 代码
- git - 如何从`git reset --hard`恢复我上次修改的提交?
- c - 为什么字符串数组只返回第一个元素,而不返回后续元素?
- data-science - 世界死亡率数据
- javascript - BST 删除方法在 JavaScript 中不起作用