3
我有一个非常大的应用程序,它会创建头痛来改变对这个过程的每一个调用,所以我正在尝试做一个可选参数的过程。下面是该过程的最上面两行这是在存储过程中使用可选参数的正确方法吗?
ALTER PROCEDURE [dbo].[sp_get_entity_list]
@entityid int , @entitycat int, @adminTab bit = 0, @root int = 0
当调用代码的程序,它通常被称为
"EXEC sp_get_entity_list " & EntityID & ", " & EntityCAT
,但在少数情况下,我需要通过一个位类型的参数来显示它来自不同的位置 - 我打电话通过使用
"EXEC sp_get_entity_list " & EntityID & ", " & EntityCAT & ",1"
我做错了什么?我不确定这是否是传递可选参数的正确方法,我希望将adminTab设置为false(或null,无所谓),除非我传递可选参数。谢谢。
你试过了吗?怎么了? – BNL
**什么**数据库和哪个**版本** ?? “SQL”=结构化查询语言 - 那不是数据库.....并且它是** IS ** SQL Server(看起来像它) - 那么你应该避免** sp_前缀 - 该前缀是由微软保留其自己的系统存储过程,并会导致SQL Server首先在“主”数据库中搜索此存储过程(不利于您的性能!) –