6 mysql 语言参考
mysql 拥有一个复杂的但直观易学的 sql 接口。这个章节描述了各种不同的命令、类型和函数,为了高效地使用 mysql 需要了解它们。这个章节也可以视为 mysql 中包含的所有功能的参考。
6.1 语言结构
6.1.1 文字:怎么写字符串与数字
这个章节描述了在 mysql 中书写字符串与数字的各种不同方式。也包含有对各种不同差别和“gotchas”,当你在处理 mysql 的基本类型时可能陷入的疑惑。
6.1.1.1 字符串
字符串是多个字符组成的一个字符序列,由单引号(“'”) 或双引号 (“"”) 字符包围。(但在 ansi 模式中运行时只能用单引号)。
例如:
'a string'
"another string"
在一个字符串中,如果某个序列具有特殊的含义,每个序列以反斜线符号 (“\”)开头,称为转义字符。 mysql 识别下列转义字符:
\0
一个 ascii 0 (nul) 字符。
\'
一个 ascii 39 单引号 (“'”) 字符。
\"
一个 ascii 34 双引号 (“"”) 字符。
\b
一个 ascii 8 退格符。
\n
一个 ascii 10 换行符。
\r
一个 ascii 13 回车符。
\t
一个 ascii 9 制表符(tab)。
\z
ascii(26) (control-z)。这个字符可以处理在 windows 系统中 ascii(26) 代表一个文件的结束的问题。(当使用 mysql database < filename 时 ascii(26) 可能会引起问题产生。)
\\
一个 ascii 92 反斜线 (“\”) 字符。
\%
一个 ascii 37 “%” 字符。它用于在正文中搜索“%”的文字实例,否则这里“%”将解释为一个通配符。查看章节 6.3.2.1 字符串比较函数。
\_
一个 ascii 95 “_” 字符。它用于在正文中搜索“_”的文字实例,否则这里“_”将解释为一个通配符。查看章节 6.3.2.1 字符串比较函数.
注意如果在某些正文环境内使用 “\%” 或 “\_”,将返回字符串 “\%” 和 “\_” 而不是 “%” 和 “_”。
字符串中包含引号的可以有下列几种写法:
* 一个字符串用单引号“'”来引用的,该字符串中的单引号“'”字符可以用“''”方式转义。
* 一个字符串用双引号“"”来引用的,该字符串中的“"”字符可以用“""”方式转义。
* 你也可以继续使用在引号前加一个转义字符“\”来转义的方式。
* 一个字符串用双引号“"”来引用的,该字符串中的单引号“'”不需要特殊对待而且不必被重复或转义。同理,一个字符串用单引号“'”来引用的,该字符串中的双引号“"”不需要特殊对待而且不必被重复或转义。
下面显示的 select 演示引号和转义是如何工作:
mysql> select 'hello', '"hello"', '""hello""', 'hel''lo', '\'hello';
+-------+---------+-----------+--------+--------+
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器