MySQL的binary类型操作

示例数据表:

CREATE TABLE test_bin (
   bin_id BINARY(16) NOT NULL
) Engine=InnoDB;

插入数据(内容是一个32位的UUID字符串值):

INSERT INTO test_bin(bin_id) VALUES(UNHEX(‘FA34E10293CB42848573A4E39937F479‘));
INSERT INTO test_bin(bin_id) VALUES(UNHEX(?));
或
INSERT INTO test_bin(bin_id) VALUES(x‘FA34E10293CB42848573A4E39937F479‘);

查询数据:

SELECT HEX(bin_id) AS bin_id FROM test_bin;

SELECT HEX(bin_id) AS bin_id FROM test_bin WHERE bin_id = UNHEX(‘FA34E10293CB42848573A4E39937F479‘);
SELECT HEX(bin_id) AS bin_id FROM test_bin WHERE bin_id = UNHEX(?);

SELECT HEX(bin_id) AS bin_id FROM test_bin WHERE bin_id = x‘FA34E10293CB42848573A4E39937F479‘;

查询结果:
bin_id
--------------------------
FA34E10293CB42848573A4E39937F479

备注:使用MySQL内置的 UUID() 创建一个函数返回 BINARY(16)类型的UUID值

CREATE FUNCTION uu_id() RETURNS binary(16) RETURN UNHEX(REPLACE(UUID(),‘-‘,‘‘));
或
CREATE FUNCTION uu_id() RETURNS binary(16) RETURN UNHEX(REVERSE(REPLACE(UUID(),‘-‘,‘‘)));

使用:
INSERT INTO test_bin(bin_id) VALUES(uu_id());
时间: 2024-10-12 13:43:34

MySQL的binary类型操作的相关文章

MySQL 日志的类型

MySQL日志类别:一般查询日志:log,general_log,log_output慢查询日志:查询执行的时长超过指定的查询,即为慢查询:错误日志:通常时指错误日志的相关信息,通常用服务器关闭和启动的日志信息,服务器运行过程中的错误信息,还可以记录警告信息.二进制日志:只是跟修改相关的操作,可以理解为一个重做日志,用于复制的基本凭据:中继日志:它其实跟复制相关的,与二进制日志几乎相同: 事物日志:随机I/O转换为顺序I/O,一般在两个文件存储,一个存满了就换另外一个存 查询日志 log={ON

进击的Python【第十二章】:mysql介绍与简单操作,sqlachemy介绍与简单应用

进击的Python[第十二章]:mysql介绍与简单操作,sqlachemy介绍与简单应用 一.数据库介绍 什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据.我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢.所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理的大数据量.所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来

MySQL 服务器变量 数据操作DML-视图

SQL语言的组成部分 常见分类: DDL:数据定义语言 DCL:数据控制语言,如授权 DML:数据操作语言 其它分类: 完整性定义语言: DDL的一部分功能约束 约束:包括主键,外键,唯一键,条件,非空,事务等各类约束 视图定义:即虚表,就是存储下来的SELECT语句 事务控制 嵌入式SQL和动态SQL 数据字典:系统编目(system catalog) 作用:保存数据库服务器上的元数据 保存元数据的数据库有: information_schema mysql performance_schem

【代码学习】MYSQL数据库的常见操作

============================== MYSQL数据库的常见操作 ============================== 一.mysql的连接与关闭 -h:指定所连接的服务器位置 -u:数据库的用户名 -p:数据库的密码 1 mysql -u 用户名 -p //连接数据库 2 密码 3 exit //关闭数据库 1 mysql_connect($host,$user,$password); //连接数据库 2 mysql_close() //关闭数据库 二.创建数据

修改mysql 表引擎类型错误

mysql引擎默认类型为MyISAM, mysql>show engines; 事务隔离机制为:READ-COMMITTED(/etc/my.cnf查看) 默认建表如果不指定引擎类型,自动为MyISAM.此时想更改表为InnoDB类型.用户登陆到mysql客户端执行:mysql>alter table ATT engine = InnoDB; 则报错:ERROR 1598 (HY000): Binary logging not possible. Message: Transaction le

如何正确选择MySQL数据列类型

MySQL数据列类型选择是在我们设计表的时候经常会遇到的问题,下面就教您如何正确选择MySQL数据列类型,供您参考学习. 选择正确的数据列类型能大大提高数据库的性能和使数据库具有高扩展性.在选择MySQL数据列类型时,请从以下几个方面考虑: 存放到数据列中的数据类型. 数据值的取值范围. 考虑性能和处理效率. 数值操作比字符操作快. 小类型的处理速度比大类型快. 不同数据表中固定长度类型和可变长度类型的处理效率是不同的. 可变长度类型在经过删除和修改操作后容易产生碎片,降低系统性能,需定期运行O

Mysql命令行常用操作

Mysql命令行常用操作 一.从命令行登录MySQL数据库服务器 1.登录使用默认3306端口的MySQL /usr/local/mysql/bin/mysql -u root -p 2.通过TCP连接管理不同端口的多个MySQL(注意:MySQL4.1以上版本才有此项功能) /usr/local/mysql/bin/mysql -u root -p --protocol=tcp --host=localhost --port=3307 3.通过socket套接字管理不同端口的多个MySQL /

linux下MySQL安装登录及操作

linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-client-4.0.16-0.i386.rpm 下载地址为:http://www.mysql.com/downloads/mysql-4.0.html, 打开此网页,下拉网页找到“Linux x86 RPM downloads”项,找到“Server”和“Client programs”项,下载需要的

Java学习篇之---Mysql中varchar类型总结

Mysql中varchar类型总结 今天新做一个项目,需要自己进行数据库设计,发现自己对varchar的用法还不是很熟悉,所以查阅资料总结若下: 1.varchar类型的变化 MySQL 数据库的varchar类型在4.1以下的版本中的最大长度限制为255,其数据范围可以是0~255或1~255(根据不同版本数据库来定).在 MySQL5.0以上的版本中,varchar数据类型的长度支持到了65535,也就是说可以存放65532个字节的数据,起始位和结束位占去了3个字 节,也就是说,在4.1或以