- Learn T-SQL Querying
- Pedro Lopes Pam Lahoud
- 164字
- 2021-06-24 14:38:13
Forced parameterization
If an application tends to generate many ad hoc queries, and there is no way to modify the application to parameterize the queries, the Parameterization database option can be changed to Forced. When Forced Parameterization is turned on, SQL Server will replace ALL literal values in ALL ad hoc queries with parameter markers. Take the example of the following query executed in the AdventureWorks sample database:
SELECT LastName, FirstName, MiddleName
FROM Person.Person
WHERE PersonType = N'EM' AND BusinessEntityID IN (5, 7, 13, 17, 19);
This query would be automatically parameterized under Forced Parameterization, as follows:
(@1 nchar(2), @2 int, @3 int, @4 int, @5 int, @6 int) SELECT LastName, FirstName, MiddleName
FROM Person.Person
WHERE PersonType = @1 AND BusinessEntityID IN (@2, @3, @4, @5, @6);
This has the benefit of increasing the reusability of all ad hoc queries, but there are some risks to parameterizing all literal values in all queries, which will be discussed later in section The importance of parameters.
推薦閱讀
- 7天精通Dreamweaver CS5網頁設計與制作
- 精通Excel VBA
- 最簡數據挖掘
- 塊數據5.0:數據社會學的理論與方法
- CentOS 8 Essentials
- 信息物理系統(CPS)測試與評價技術
- Mastering Game Development with Unreal Engine 4(Second Edition)
- LMMS:A Complete Guide to Dance Music Production Beginner's Guide
- Linux系統下C程序開發詳解
- Mastering Predictive Analytics with scikit:learn and TensorFlow
- Mastering OpenStack(Second Edition)
- 大數據素質讀本
- Machine Learning with Spark(Second Edition)
- Win 7二十一
- 網絡設備規劃、配置與管理大全(Cisco版)