`
dadi520
  • 浏览: 144763 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

MySql 转义字符的使用说明

阅读更多

MySQL的转义字符“\”

MySQL识别下列转义字符:

\0 : 一个ASCII 0 (NUL)字符。

\n : 一个新行符。

\t : 一个定位符。

\r : 一个回车符。

\b : 一个退格符。

\' : 一个单引号(“'”)符。

\ " : 一个双引号(“ "”)符。

\\ : 一个反斜线(“\”)符。

\% : 一个“%”符。它用于在正文中搜索“%”的文字实例,否则这里“%”将解释为一个通配符。

\_ :  一个“_”符。它用于在正文中搜索“_”的文字实例,否则这里“_”将解释为一个通配符。

注意,如果你在某些正文环境中使用“\%”或“\%_”,这些将返回字符串“\%”和“\_”而不是“%”和“_”。

有几种方法在一个字符串内包括引号:
1、必须转义的:
    一个字符串用单引号“'”来引用的,该字符串中的单引号“'”字符可以用“''”方式转义。
    一个字符串用双引号“ "”来引用的,该字符串中的“ "”字符可以用“ " "”方式转义。
    同时你也可以继续使用一个转义字符“\”来转义

2、可不转义的:
    一个字符串用双引号“ "”来引用的,该字符串中的单引号“'”不需要特殊对待而且不必被重复或转义。

    同理,一个字符串用单引号“'”来引用的,该字符串中的双引号“ "”不需要特殊对待而且不必被重复或转义。

下面显示的SELECT演示引号和转义如何工作:

mysql > SELECT 'hello', ' "hello "', ' " "hello " "', 'hel''lo', '\'hello';
+----------+--------------+-------------------+----------+---------+
¦ hello ¦ "hello " ¦ " "hello " " ¦ hel'lo ¦ 'hello ¦
+----------+--------------+-------------------+----------+---------+

mysql > SELECT "hello ", "'hello' ", "''hello'' ", "hel " "lo ", "\ "hello ";
+----------+----------+-----------+------------+-----------+
¦ hello ¦ 'hello' ¦ ''hello'' ¦ hel "lo ¦ "hello ¦
+---------+-----------+-----------+------------+-----------+

mysql > SELECT "This\nIs\nFour\nlines ";
+--------------------+
¦ This
Is
Four
lines ¦
+--------------------+

如果你想要把二进制数据插入到一个BLOB列,下列字符必须由转义序列表示:

NUL : ASCII 0。你应该用'\0'(一个反斜线和一个ASCII '0')表示它。

\  : ASCII 92,反斜线。用'\\'表示。

' : ASCII 39,单引号。用“\'”表示。

" : ASCII 34,双引号。用“\ "”表示。

分享到:
评论

相关推荐

    MySQL 转义字符使用说明

    MySQL 转义字符使用说明 MySQL 转义字符是数据库管理系统中的一种特殊字符,用于表示特殊含义的字符。这些字符在 MySQL 中有特殊的含义,例如换行符、回车符、制表符等。 在 MySQL 中,转义字符可以分为两类:可...

    Mybatis在Mapper.xml文件中的转义字符处理方式.pdf

    以下是几个转义字符使用场景的案例: - 查询即将到期的保险记录,其中可能包含比较操作和特殊字符: ```xml SELECT * FROM tb_insurance != null and vehicleNum != ''"> AND vehicle_num = #{vehicleNum} ...

    PHP防MYSQL注入及转义存在潜在威胁的字符串插件.rar

    PHP防MYSQL注入及转义存在潜在威胁的字符串插件介绍: 1.插件作用: 本插件对用户提交的信息进行过滤可以防止数据库注入,及转义用户可能提交的会被执行的脚本代码使之转为字符串,从而保证了网页的正常显示和...

    SQL中的转义字符

    然而,对于模糊查询的占位符 `%` 和 `_`,Oracle使用反斜杠 `\` 作为它们的转义字符。当你想要在查询中查找实际的百分号 `%` 或下划线 `_` 时,你需要在它们前面加上反斜杠,如 `'%\%%'` 或 `'%\_'`。这里的 `ESCAPE...

    浅谈MySQL模糊查询中通配符的转义

    如果我们想要模糊查询带有通配符的字符串,如“60%”,“user_name”,就需要对通配符进行转义,有两种方式。如下:   1、反斜杠是转义符,通过反斜杠来转义%,使其不再是通配符。这里第一个%是通配符,第二个%不是...

    转义表单提交字符处理函数

    - **功能**:此函数用于准备字符串以安全地插入到MySQL数据库中,通过转义特殊字符来防止SQL注入。 - **语法**:`mysql_real_escape_string(string, connection)` - **参数**: - `string`:要转义的字符串。 -...

    插入数据库之前将特殊字符转义

    在编程和数据库交互时,确保数据安全至关重要,尤其是在插入数据到数据库之前,必须对特殊字符进行转义处理。这是因为不转义的特殊字符可能导致SQL注入等安全问题,从而造成数据破坏、信息泄露甚至整个系统的瘫痪。...

    MySQL数据入库时特殊字符处理详解

    MySQL 识别下列转义字符: 0 一个 ASCII 0 (NUL) 字符。 ‘ 一个 ASCII 39 单引号 (“’”) 字符。 ” 一个 ASCII 34 双引号 (“””) 字符。 一个 ASCII 8 退格符。 一个 ASCII 10 换行符。 r 一个 ASCII 13 回车...

    php javascript html mysql 特殊字符处理.txt

    1. **转义字符**:MySQL默认使用反斜杠(\)作为转义字符。 - 示例代码: ```sql SELECT * FROM users WHERE name LIKE 'John%'; ``` 2. **参数化查询**:使用参数化查询可以有效避免SQL注入。 - 示例代码...

    管理从Windows窗体到mysql的转义字符

    总结来说,管理从Windows窗体到MySQL的转义字符涉及到理解数据库的SQL语法、掌握C#的MySQL数据访问库,以及熟悉如何处理用户输入的安全性。通过使用参数化查询和适当的验证,我们可以有效地避免转义字符引发的问题,...

    基于sqlite特殊字符转义的实现方法

    SQLite使用自定义的转义机制,不同于其他数据库系统如MySQL或PostgreSQL使用反斜杠`\`作为转义字符。在SQLite中,转义字符是`/`,即在需要转义的特殊字符前加上一个`/`。例如,要查找包含`%`字符的记录,应将查询中...

    字符串转化成表名

    在建存储过程实现某一目的时,传入的参数会遇到是列名,表名的字符串,在这种情况下,应该怎样通过参数获得你要的值呢?

    PHP字符转义相关函数小结(php下的转义字符串)

    同时,不建议使用mysql_escape_string()来转义字符串,而是在用户输入时进行转义。由于set_magic_quotes_runtime()函数在PHP5.3.0之后被废弃,因此在使用PHP5.3.0以前的版本时,建议统一配置关闭此选项。此外,由于...

    MySQL++使用手册

    - **目的**:解释如何正确地在 SQL 语句中使用引号和转义字符。 - **代码**:例如,正确地转义字符串中的特殊字符。 **3.6 C++ 等效的 SQL 列类型** - **目的**:介绍如何在 C++ 中表示不同的 SQL 数据类型。 - **...

    MySQL数据库:模式匹配.pptx

    - 转义字符通常使用`/`或`#`,但具体使用哪种需要根据查询需求来设定。 通过学习这些知识点,你可以有效地在MySQL中执行复杂的模糊查询,找出符合特定模式的数据。在实际应用中,模式匹配对于数据挖掘、报告生成、...

    mysql 参考

    例如,`'hello'`, `"hello"`, `""hello""`, `hel'lo`, `'hello'`等表达式展示了如何正确地使用引号和转义字符。 ### 插入二进制数据到BLOB列 当需要向BLOB列中插入二进制数据时,特定的字符必须使用转义序列表示,...

Global site tag (gtag.js) - Google Analytics