查看: 6011|回复: 0
打印 上一主题 下一主题

解析:轻松掌握 字符串文字字符集和校对

[复制链接]
跳转到指定楼层
1#
发表于 2008-12-22 16:20:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
台州网址导航
每一字符串字符文字有一个字符集和一个校对规则,它不能为空。

一个字符串文字可能有一个可选的字符集引介词和COLLATE子句:

[_charset_name]'string' [COLLATE collation_name]

例如:

以下为引用的内容:

SELECT 'string';
SELECT _latin1'string';
SELECT _latin1'string' COLLATE latin1_danish_ci;




对于简单的语句SELECT 'string',字符串使用由character_set_connection和collation_connection系统变量定义的字符集和 校对规则。

_charset_name表达式正式称做一个引介词。它告诉解析程序,“后面将要出现的字符串使用字符集X。”因为以前人们对此感到困惑,我们强调引介词不导致任何转换; 它仅是一个符号,不改变字符串的值。引介词在标准十六进制字母和数字十六进制符号(x'literal'和 0xnnnn)中是合法的,以及?(当在一个编程语言接口中使用预处理的语句时进行参数替换)。

例如:

以下为引用的内容:

SELECT _latin1 x'AABBCC';
SELECT _latin1 0xAABBCC;
SELECT _latin1 ?;


MySQL这样确定一个文字字符集和校对规则:

·如果指定了CHARACTER SET X和COLLATE Y,那么使用CHARACTER SET X和COLLATE Y。

·如果指定了CHARACTER SET X而没有指定COLLATE Y,那么使用CHARACTER SET X和CHARACTER SET X的默认校对规则。

·否则,使用通过character_set_connection 和 collation_connection系统变量给出的字符集和 校对规则。

例如:

·使用latin1字符集和latin1_german1_ci校对规则的字符串:

·SELECT _latin1'Müller' COLLATE latin1_german1_ci;

·使用latin1字符集和其默认校对规则的字符串(即,latin1_swedish_ci):

·SELECT _latin1'Müller';

·使用连接默认字符集和校对规则的字符串:

·SELECT 'Müller';

字符集引介词和COLLATE子句是根据标准SQL规范实现的。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖
台州维博网络(www.tzweb.com)专门运用PHP+MYSQL/ASP.NET+MSSQL技术开发网站门户平台系统等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

网站推广
关于我们
  • 台州朗动科技(Tzweb.com)拥有多年开发网站平台系统门户手机客户端等业务的成功经验。主要从事:政企网站,系统平台,微信公众号,各类小程序,手机APP客户端,浙里办微应用,浙政钉微应用、主机域名、虚拟空间、后期维护等服务,满足不同企业公司的需求,是台州地区领先的网络技术服务商!

Hi,扫描关注我

Copyright © 2005-2026 站长论坛 All rights reserved

Powered by 站长论坛 with TZWEB Update Techonolgy Support

快速回复 返回顶部 返回列表