SQL 字符串转义
根据所选SQL方言转义字符串。MySQL转义反斜杠和引号;PostgreSQL/SQLite/MSSQL将单引号加倍处理。
为MySQL/MariaDB、PostgreSQL、SQLite或MSSQL生成SQL字符串字面量的转义文本和带引号形式。它是语法辅助工具,不是参数化查询的替代品。
如何转义SQL字符串
- 选择SQL方言。
- 输入想表示为字符串字面量的文本。
- 查看转义后的值和带引号的字面量。
- 复制测试或检查所需的结果。
不同方言的处理
MySQL/MariaDB模式会用反斜杠处理反斜杠、引号、换行、回车、NUL与Ctrl-Z等。PostgreSQL、SQLite与MSSQL模式会把单引号加倍。
带引号输出在MySQL、PostgreSQL、SQLite中使用普通单引号,而MSSQL输出类似N'text'的形式。
隐私与安全限制
转换在浏览器本地完成,本应用不会把输入文本发送到外部服务器。不要把这个工具当作SQL注入防护;生产代码应使用数据库驱动提供的prepared statement或parameter binding。
SQL Escape Helper FAQ
可以代替Prepared Statement吗?
不可以。对不可信值应使用数据库驱动参数或prepared statement。
支持哪些SQL方言?
MySQL/MariaDB、PostgreSQL、SQLite和MSSQL T-SQL。
为什么MSSQL结果前有N?
此实现会在MSSQL模式输出带N前缀的字符串字面量。
PostgreSQL会生成E字符串吗?
不会。此实现只把单引号加倍并使用普通单引号包裹。
工具会执行SQL吗?
不会。它只在本地转换文本,不连接数据库。