sql 只向一个有 10 个字段的表中插入两个值
Posted
技术标签:
【中文标题】sql 只向一个有 10 个字段的表中插入两个值【英文标题】:sql insert only two values into a table with 10 fields 【发布时间】:2014-05-22 23:54:27 【问题描述】:我的表有 10 个字段:field1、field2、...、field10
现在假设我只想将值插入前两列,然后将 '' 放在其余列上。
我正在使用
insert into table1 values
(100,200,'','','','','','','','','','')
我想知道是否有更好的方法来避免 ,'','','','' ?
感谢您的建议!
【问题讨论】:
【参考方案1】:是的,只需像这样指定要添加的字段:
insert into table1 (field1, field2) VALUES (100,200)
在这种情况下,field1 将插入 100,field2 将插入 200。
您表中的其他字段将为空,因此您需要确保这是允许的。
编辑:
在 cmets 中,@andreas 是正确的 - 您未指定的任何字段都将被赋予其默认值(可能为 null)
【讨论】:
提供解释比提供结果代码更重要。 Cannot insert the value NULL into column 我得到了这个错误,我猜是因为我的列不允许空值? 它们应该有一个默认值——不必为空。 @user3344443 所以你不允许 NULL 但你允许一个空白空间?如果您认为这些相同,则应该选择其中之一。 是的,我允许'',我想我需要先设置默认('')?以上是关于sql 只向一个有 10 个字段的表中插入两个值的主要内容,如果未能解决你的问题,请参考以下文章
如何从1个表中选择许多行并将其插入另一个表中特定行的特定JSONB字段中?但是在单个原始SQL查询中
怎样在SQL server 2005 的表中插入图片字段为无效值怎么办