【MYSQL】0001_MYSQL的识别符
来源:互联网 发布:小米vr软件 编辑:程序博客网 时间:2024/05/21 17:15
数据库、表、索引、列和别名是识别符。该节描述了在MySQL中识别符的允许的语法。
下面的表描述了每类识别符的最大长度和允许的字符:
除了表内注明的限制,识别符不可以包含ASCII 0或值为255的字节。数据库、表和列名不应以空格结尾。在识别符中可以使用引号识别符,但是应尽可能避免这样使用。
识别符用Unicode(UTF8)保存。在.frm文件中保存的对表进行定义的识别符和在mysql数据库中的授权表保存的识别符也用Unicode(UTF8)保存。在MySQL 5.1中授权表(和其它表)的字符串列的大小等于字符个数;这说明(不象以前版本的MySQL)你可以在这些列保存的值中使用多字节字符而不需要降低字符个数。
识别符可以使用引号引起来也可以不引起来。如果识别符是一个保留字或包含特殊字符,无论何时使用,必须将它引起来。
识别符的引用符是反勾号(‘`’):
mysql> SELECT * FROM `select` WHERE `select`.id > 100;
如果SQL服务器模式包括ANSI_QUOTES模式选项,还可以用双引号将
识别符引起来:
mysql> CREATE TABLE "test" (col INT);ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"test" (col INT)' at line 1mysql> SET sql_mode = 'ANSI_QUOTES';Query OK, 0 rows affected (0.00 sec)mysql> CREATE TABLE "test" (col INT);Query OK, 0 rows affected (0.02 sec)
如果你引用识别符,可以在识别符内包含识别符引用符。如果识别符内包括的字符与引用识别符的字符相同,则需要用双字符。下面的语句创建一个名为a`b包含列c”d的表:
mysql> CREATE TABLE `a``b` (`c"d` INT);
建议不要使用XeX模式的名,例如1e或2e2,因为与类似1e+1这样的数字混淆。
转载自:https://www.shiyanlou.com/courses/running
我正在实验楼撸代码,你也快来!800+编程实战教程,无需搭环境,直接练习!用我的链接注册,你我都能获得3个实验豆!http://www.shiyanlou.com/register?inviter=NTY0MzE5NDE4Njg0
- 【MYSQL】0001_MYSQL的识别符
- 数据库_MySQL MySQL的锁机制
- Mysql的正则匹配与常用匹配符_Mysql必知必会学习记录01
- MySQL数据库备份和还原的常用命令_MySQL教程
- [置顶]MYSQL系列1_MySQL的安装,可视化工具的使用,以及建库建表等
- 数据库_MySQL应用_Linux下 开放/关闭 mysql的访问权限
- CentOS下编写shell脚本来监控MySQL主从复制的教程_MySQL
- 最小白_mysql的安装
- MySQL函数一览_MySQL函数全部汇总
- mysql搭建(_mysql 安装-centos)
- MySQL函数一览_MySQL函数全部汇总
- Mysql字符集设置指南_MySQL教程
- MySQL函数一览_MySQL函数全部汇总
- Warning:The /usr/local/mysql/data directory is not owned by the 'mysql' or '_mysql'的解决办法
- 最新_MySQL 的 C API预处理语句
- 处理语句 _MySQL 的 C API预
- 处理语句 _MySQL 的 C API预
- 数据库_MySQL UUID函数的详解
- HDU 1232 畅通工程
- C语言参数传递
- HDU 2159 FATE 二维费用背包
- HDU 2153 JAVA
- 67. Add Binary
- 【MYSQL】0001_MYSQL的识别符
- mongoDB使用详解(在node中使用)
- android瘦身---干掉地图的jar包
- visual tracking代码测试
- 背个小背包
- HDU 2156 JAVA
- HDU 2160 JAVA
- 验证码
- 欢迎使用CSDN-markdown编辑器