我很好奇为什么这行不通:
create procedure test
@id int not null,
@feature bit not null
第一行显示“Incorrect syntax to be null”。
[我不想让我的用户向 SP 提供空值,因此试图明确避免相同的情况。]
最佳答案
此功能是通过 native 编译存储过程在 SQL Server 2014 中引入的。如果您还没有使用 2014,您将不得不求助于其他预防方法:
- 阻止它访问代码/应用程序逻辑中的数据库(虽然我们通常无法访问它)
- 让你SP的第一部分为null检查,如果为null则跳出或抛出错误
- 太多选择无法继续...
引用:https://msdn.microsoft.com/en-us/library/dn452286(v=sql.120).aspx
关于sql - 避免用户向 SQL Server 中的存储过程提供空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31209467/