在 SQL 2005/8 中,我希望将选择查询中的列转换为 NOT NULL 列。
coalease()
和 isnull()
虽然功能很好,但不是我想要的。我希望 select 在任何数据为 NULL 时抛出错误。
这可能吗?
[更新] 显然,最好的方法是修改源表,不幸的是在这种情况下,这不是一个(成本效益)选项。
最佳答案
您要求的内容不存在。
NOT NULL 是一个约束。 SELECT 语句不强制执行约束。仅在插入/更新/删除数据期间强制执行约束。如果需要强制执行约束,请通过 ALTER TABLE ... ADD... 声明表上的约束
如果要返回非空数据,请使用空转换函数,例如 ISNULL 或 COALESCE。
关于sql-server - 可以将可为空的列转换为 NOT NULL 列吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1972046/