• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    MySQL中的binary类型使用操作

    本文主要向大家介绍了MySQL数据库之MySQL的binary类型操作,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。

    示例数据表:

    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());

    范例1:

    Connection conn = null;
     Statement stat = null;
     ResultSet rs = null;
     try {
      conn = JDBCUtils.getConnection(map);
      String sql = "select HEX(RECID) AS recid,STDNAME AS stdname ,HEX(RESID) AS resid from jyyt";
      stat = conn.createStatement();
      rs = stat.executeQuery(sql);
      while (rs.next()) {
      String recid = rs.getString("recid");
      String staname = rs.getString("stdname");
      String resid = rs.getString("resid");
      System.out.println(recid + "---" + staname + "---" + resid);
      }
     } catch (SQLException e) {
      e.printStackTrace();
     } finally {
      JDBCUtils.closeConnection(conn, stat, rs);
     }

    范例2:

    SELECT
     y.UNITID AS unitid,
     y.UNITNAME AS unitName,
     y.WARNINGTYPE AS warningType 
    FROM
     GXJT_YJ AS y
     LEFT JOIN md_org AS m ON m.RECID = y.UNITID
     LEFT JOIN PMS_COMPANY_INFO AS p ON m.RECID = p.UNITID 
    WHERE
     HEX(m.parents) LIKE '%66F7B47C80000101D5E8ABF15CD9DA73%' 
    AND y.WARNINGTYPE = 'REGISTRATION_DIFFERENT'

    未使用HEX()函数:

    使用HEX()函数:

    补充知识:【MySQL】如何使用Navicat查看mysql数据库中varbinary变量内容?

    环境

    Navicat软件版本:Navicat premium 11.1.13(64-bit)

    mysql数据库版本:5.7

    问题的提出

    如题。

    步骤

    解决方法很简单,备忘。

    1、数据库表的设计如下,表中photo变量类型为varbinary。

    2、Navicat软件显示为乱码,如下。

    3、右键“保存数据为”,保存为1.txt。文件名随便起。

    4、用UE打开,显示如下。

    以上这篇MySQL中的binary类型使用操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:
    • MYSQL配置参数优化详解
    • MySql数据库备份的几种方式
    • Mysql查询语句优化技巧
    上一篇:MySQL找出未提交事务的SQL实例浅析
    下一篇:MySQL 的 21 个规范、优化最佳实践!
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    MySQL中的binary类型使用操作 MySQL,中的,binary,类型,使用,