Sql server 范围的存储过程参数
这个问题专门针对服务于SSRS报告的存储过程,但我想它可以应用于任何存储过程 通常,我们向存储过程发送一个范围以获取该范围的数据。例如,获取名称以“A”到“K”开头的客户的所有客户数据。在客户端,我有一个所有客户名称的下拉列表(带有typeahead),用户可以选择开始和结束。在下拉列表中,我只显示客户的姓名,但我还有客户的Id。现在值得一提的是,这只是一个例子,我并不总是在“A”和“K”之间寻找客户。有时,范围是完全不同的。为简洁起见,我们将坚持使用客户名称 假设用户选择了以下选项:Sql server 范围的存储过程参数,sql-server,stored-procedures,ssrs-2012,Sql Server,Stored Procedures,Ssrs 2012,这个问题专门针对服务于SSRS报告的存储过程,但我想它可以应用于任何存储过程 通常,我们向存储过程发送一个范围以获取该范围的数据。例如,获取名称以“A”到“K”开头的客户的所有客户数据。在客户端,我有一个所有客户名称的下拉列表(带有typeahead),用户可以选择开始和结束。在下拉列表中,我只显示客户的姓名,但我还有客户的Id。现在值得一提的是,这只是一个例子,我并不总是在“A”和“K”之间寻找客户。有时,范围是完全不同的。为简洁起见,我们将坚持使用客户名称 假设用户选择了以下选项: 起点:
- 起点:伊莱恩·贝尼斯(客户ID:199)
- 完:杰瑞·宋飞(客户编号:3)
我的问题是我应该选择哪些选项?每种方法的优点/缺点是什么?似乎你已经知道了很多优点/缺点。如果要使用已验证的输入,则从实际数据生成列表,然后应将唯一ID发送到存储过程。这包括你已经提到的管理费用。如果不需要验证输入,那么不要浪费时间查找有效数据或向存储过程发送ID。谢谢您的评论。我只是想发布这个问题,以防其他经验丰富的人有其他建议或赞成/反对意见。如果我错过了一些重要的事情,我不想以某种方式继续做下去。