数据库 bind variable/parameter
时间: 2024-09-13 07:15:51 浏览: 31
数据库bind variable或parameter是指在SQL查询中用于动态值插入的位置占位符。它的作用是在运行时将数据与SQL语句分开,提高了安全性,避免了直接拼接字符串可能导致的SQL注入攻击。在执行查询时,这些变量通常会预先绑定到实际的数据值上。
例如,在MySQL中,使用`?`作为占位符,执行如下代码:
```sql
SELECT * FROM users WHERE username = ? AND password = ?";
```
然后在执行时通过预处理语句(PreparedStatement)传递数据:
```java
String username = "john";
String password = "secret";
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM users WHERE username = ? AND password = ?");
pstmt.setString(1, username);
pstmt.setString(2, password);
ResultSet rs = pstmt.executeQuery();
```
阅读全文