Add files via upload

This commit is contained in:
雾島风起時
2025-09-25 03:32:26 +08:00
committed by GitHub
parent 225937cc20
commit c2844cb166
52 changed files with 2073 additions and 0 deletions
+21
View File
@@ -0,0 +1,21 @@
### SQL 注入用转义字符防御时,如果遇到数据库的列名或是表名本身就带着特殊字符怎么办
在这种情况下,**不应该**对这些数据库对象名称使用转义字符,因为它们是数据库的合法标识符,而不是用户输入的数据。如果进行了转义,数据库将无法正确识别这些对象
**正确的做法:使用反引号或双引号进行引用**
为了正确地处理包含特殊字符的列名或表名,标准的做法是使用**反引号(`**或**双引号(")**将这些标识符括起来。不同的数据库系统有不同的规定:
- **MySQL**:使用**反引号(`**
```sql
SELECT `user-name` FROM `user's_data` WHERE id = 1;
```
- **PostgreSQL、Oracle、SQL Server**:使用**双引号("**
```sql
SELECT "user-name" FROM "user's_data" WHERE id = 1;
```
**注意**:这种引用方法只用于处理**数据库对象名**,不应用于处理**用户输入数据**