mysql 数据库中实现了许多的数据类型、通常我们用的最多的是在建表的时候指定列的数据类型 如:brithday date default '2000-01-01'

那么我们如何给字面值(直接量)指定类型呢?

1、为字符指定它的类型

  格式:  _{字符集名}'字符'

  例如:  _gb2312'蒋乐哥哥'

2、为时间|日期指定它的类型

  格式:  {date | time | timestamp} '值' # 注意这个值要和前面的时间对的上、不然会报错的。这里没有datetime 这个类型可用

  例子:  date '2017-03-17'

3、十六进制的字面值

  格式:  X'值'  #注意这里的值这的最小长度一定要是一个字节,也只能是整数个字节。如X'F' 是不行的,它只有1/2个字节长。

  例子:  X'a0'

4、2进制的字面值

  格式:  b'值'

  例子:  b'1010'

5、bool类型的字面值

  格式:  TRUE  | FALSE  |true  |false

6、空值的字面值

  格式:  NULL

升华:

  在我们定义表的时候如果我们想要的是一个字符型的列,那么我们定义成char / varchar 就行了。如果我们不定义那么数据库会给它分配一个

  默认的字符集、我这边通常会设置默认字符集为utf8。在mysql比较两个字符串是否相等时、事实上是在比较两个串的字节序列。

select _gb2312'蒋乐哥哥'=_utf8'蒋乐哥哥';
ERROR 1267 (HY000): Illegal mix of collations (gb2312_chinese_ci,COERCIBLE) and (utf8_general_ci,COERCIBLE) for operation '='

  前文说过字符只是一串字节序列、然而二进制类型、16进制类型是最天然的二进制序列的表达方式;那么它们之间怎么转换呢?

  由'a'的字节序列直接转换为字符

select _utf8 b'',_utf8 X'';
+-------------------+-------------+
| _utf8 b'' | _utf8 X'' |
+-------------------+-------------+
| A | A |
+-------------------+-------------+

---

mysql 字面值的更多相关文章

  1. 利用Shell脚本将MySQL表中的数据转化为json格式

    脚本如下: #!/bin/bash mysql -s -phello test >.log <<EOF desc t1; EOF lines="concat_ws(',', ...

  2. [原创]java WEB学习笔记98:Spring学习---Spring Bean配置及相关细节:如何在配置bean,Spring容器(BeanFactory,ApplicationContext),如何获取bean,属性赋值(属性注入,构造器注入),配置bean细节(字面值,包含特殊字符,引用bean,null值,集合属性list map propert),util 和p 命名空间

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  3. MySQL预处理语句

    预制语句的SQL语法基于三个SQL语句: PREPARE stmt_name FROM preparable_stmt; EXECUTE stmt_name [USING @var_name [, @ ...

  4. 常用SQL操作(MySQL或PostgreSQL)与相关数据库概念

    本文对常用数据库操作及相关基本概念进行总结:MySQL和PostgreSQL对SQL的支持有所不同,大部分SQL操作还是一样的. 选择要用的数据库(MySQL):use database_name; ...

  5. 《MySQL必知必会》读书笔记

    一.了解MySQL      1.什么是数据库?         数据库是一种以某种有组织的方式存储的数据集合.      2.模式(schema):关于数据库和表的布局及特性的信息.      3. ...

  6. MySQL字符集编码

    MySQL字符集编码总结 之前内部博客上凯哥分享了一篇关于mysql字符集的文章,之前我对mysql字符集一块基本没有深究过,看到凯哥文章后有些地方有点疑惑,遂自己去看了mysql的官方文档,并參考了 ...

  7. MYSQL数据库相关操作---读书笔记分享

    ===================数据库软件: <DBMS,DataBase Management System >数据库: 保存特定类型数据的容器<DB,database> ...

  8. mysql必知必会

    春节放假没事,找了本电子书mysql必知必会敲了下.用的工具是有道笔记的markdown文档类型. 下面是根据大纲已经敲完的章节,可复制到有道笔记的查看,更美观. # 第一章 了解SQL## 什么是S ...

  9. 《MySQL必知必会》整理

    目录 第1章 了解数据库 1.1 数据库基础 1.1.1 什么是数据库 1.1.2 表 1.1.3 列和数据类型 1.1.4 行 1.1.5 主键 1.2 什么是SQL 第2章 MySQL简介 2.1 ...

随机推荐

  1. 能使用html/css解决的问题就不要使用JS

    为什么说能使用html/css解决的问题就不要使用JS呢?两个字,因为简单.简单就意味着更快的开发速度,更小的维护成本,同时往往具有更好的体验,下面介绍几个实例. 1. 导航高亮 导航高亮是一种很常见 ...

  2. 使用 pm2-web 监控 pm2 服务运行状态

    pm2-web 是一款 pm2 服务状态监控程序,基于 web . 安装 $ npm install -g pm2-web 运行(默认是在8080端口) $ pm2-web 配置 pm2-web 将会 ...

  3. 2014 百度之星 题解 1004 Labyrinth

    Problem Description 度度熊是一仅仅喜欢探险的熊,一次偶然落进了一个m*n矩阵的迷宫,该迷宫仅仅能从矩阵左上角第一个方格開始走,仅仅有走到右上角的第一个格子才算走出迷宫,每一次仅仅能 ...

  4. Python学习(四)数据结构(概要)

    Python 数据结构 本章介绍 Python 主要的 built-type(内建数据类型),包括如下: Numeric types          int float Text Sequence ...

  5. docker和虚拟化技术的区别

    1.docker和虚拟化技术的区别 Docker 扩展了 Linux 容器(Linux Containers),或着说 LXC,通过一个高层次的 API 为进程单独提供了一个轻量级的虚拟环境.Dock ...

  6. mac的dns缓存查询和清除

    1.清楚dns缓存 dscacheutil -flushcache 2.查询nslookup

  7. Install Python+Django+Nginx+UWSGI

    一.软件环境: CentOS6.6_64bit 需要用到的软件: [root@django tools]# ll 总用量 33336 -rw-r--r-- 1 root root 7497785 3月 ...

  8. Python 爬虫(1)基础知识和简单爬虫

    Python上手很容易,免费开源,跨平台不受限制,面向对象,框架和库很丰富. Python :Monty Python's Flying Circus (Python的名字来源,和蟒蛇其实无关). 通 ...

  9. Kotlin【简介】Android开发 配置 扩展

    重要资源 官方资源:官网 . 官网源码 .官网文档 . 在线 IDE .GitHub 中文资源:中文官网 .中文文档  离线文档:PDF 文件 . PDF 文件 GitBook 版 .ePUB 文件  ...

  10. http://m.blog.csdn.net/article/details?id=49132747

    http://m.blog.csdn.net/article/details?id=49132747