.NET 中 SQL 的 Parameter 占位符的使用
在一般的情况想在
- OLE DB .NET Framework 数据提供程序和 ODBC .NET Framework 数据提供程序不支持用于将参数传递到 SQL 语句或存储过程的命名参数。在此情况下,必须使用问号 (?) 占位符,顺序必须与存储过程中所定义的参数顺序相匹配,如以下示例所示。SELECT * FROM Customers WHERE CustomerID = ?;在 Access 中你可以使用 @CustomerId 也可以使用 “?” 但是在 DB2 中你只能使用 “?”,使用前者会出现错误提示。
一般的规则如下:
- SqlCommand should be '@' character
- OleDbCommand or OdbcCommand should be '?' character
- OracleCommand should be ':' character