不喜欢广告? 去 无广告 今天
SQL转义
开发人员安全
广告 移除?
广告 移除?
指导
SQL转义
转义字符串中的特殊字符,以便安全地用于 SQL 查询。支持多种 SQL 方言,包括 MySQL、PostgreSQL、SQL Server 和 SQLite。通过在引号、反斜杠和其他危险字符到达数据库之前对其进行适当转义,来防止 SQL 注入。
如何使用
将原始字符串粘贴到输入区域,选择您的 SQL 方言,然后点击 Escape。该工具将应用特定于方言的转义规则并输出安全字符串。切换到取消转义模式可反转该过程,并从转义字符串中恢复原始文本。
特征
- 5 种 SQL 方言 – 通用/ANSI SQL、MySQL、PostgreSQL、SQL Server 和 SQLite,具有特定方言的转义规则
- Escape & Unescape – 双向转换:为 SQL 转义原始字符串或将 SQL 字符串取消转义回原始文本
- 全面转义 – 处理单引号、双引号、反斜杠、NUL 字节、换行符、回车符和特定方言的字符
- 即用型输出 – 转义后的字符串可直接粘贴到 SQL 查询中
- 复制到剪贴板 – 一键复制转义结果
- 客户端仅支持 所有处理都在您的浏览器中进行,无需将任何数据发送到服务器。
广告 移除?
常问问题
-
为什么不同的 SQL 数据库需要不同的转义方式?
每个 SQL 数据库引擎在处理字符串中的特殊字符时都有自己的规则。MySQL 使用反斜杠转义(' 表示单引号),而 PostgreSQL 和 ANSI SQL 使用双单引号('')。SQL Server 对字符串使用双单引号,但对标识符使用方括号。为您的数据库使用错误的转义方法可能会使查询容易受到注入攻击或导致语法错误。
-
我应该使用字符串转义还是参数化查询?
参数化查询(预编译语句)始终是防止生产代码中 SQL 注入的首选方法。它们将 SQL 结构与数据分开,从根本上杜绝了注入的可能性。字符串转义对于快速测试、调试、编写一次性脚本或在没有参数化查询的情况下很有用。对于任何处理用户输入的生产应用程序,请务必使用参数化查询。
-
SQL 转义处理哪些字符?
SQL 转义处理可能破坏查询语法或导致注入攻击的字符。最重要的是单引号('),它在 SQL 中分隔字符串。其他转义字符包括双引号(")、反斜杠(\)、NUL 字节(\0)、换行符(\n)、回车符(\r)以及 SUB 字符(MySQL 中的 \Z)。确切的转义字符集因 SQL 方言而异。
