使用语句参数
适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW)
参数是 SQL 语句中的变量,可让 ODBC 应用程序能够:
有效地为表中的列提供值。
在构造查询条件时增强用户交互。
管理 文本、 ntext 和 图像 数据和 SQL Server 特定的 C 数据类型。
例如, 部件 表包含名为 PartID、 Description 和 Price 的列。 若要添加不带参数的部件,需要构造 SQL 语句,例如:
INSERT INTO Parts (PartID, Description, Price) VALUES (2100, 'Drive shaft', 50.00)
尽管使用已知的值集插入一行时可接受此语句,但要求应用程序插入多行时使用此语句会很不适合。 ODBC 通过让应用程序通过参数标记替换 SQL 语句中的任何数据值来解决此问题。 这种参数标记由问号 (?) 表示。 在下面的示例中,三个数据值被替换为参数标记:
INSERT INTO Parts (PartID, Description, Price) VALUES (?, ?, ?)
参数标记然后被绑定到应用程序变量。 若要插入新行,应用程序只需设置变量的值并执行此语句。 然后,驱动程序检索变量的当前值并将其发送至数据源。 如果多次执行此语句,则应用程序可通过准备此语句使该进程更加有效。
每个参数标记均按从左到右的顺序由其分配至参数的序号引用。 SQL 语句中最左侧的参数标记的序号值为 1;下一个是序号 2,依此而行。