【问题标题】:How to make default blob an image in MySQL Workbench?如何在 MySQL Workbench 中使默认 blob 成为图像?
【发布时间】:2021-05-31 15:56:44
【问题描述】:

我知道如何将图像上传到我的数据库,但我如何才能使我的计算机中的 longblob/blob 的默认图像而不是 null?

【问题讨论】:

    标签: mysql sql image blob default


    【解决方案1】:

    将 DEFAULT 属性设置为 BLOB 列(当然 NULL 除外)的唯一方法是将其指定为表达式。

    如果您想将 DEFAULT 值设置为某个图像,那么您可以:

    1. 将此图像加载到 BLOB 列中。例如
    CREATE temptable (blob_column BLOB) 
    SELECT LOAD_FILE('image_filename') AS blob_column;
    
    1. 将加载的二进制值转换为可以在表定义中键入的某些文本表示。例如,使用 HEX() 函数
    SELECT HEX(blob_column) 
    FROM temptable;
    

    将在输出中获得长字符串文字。

    1. 在 BLOB 列的 DEFAULT 值的表达式中使用获得的文字(复制粘贴,避免过多的换行符/空格/截断/等)。应用与步骤 2 中应用的转换相反的表达式。喜欢
    CREATE TABLE tablename ( ...
                             blob_column_name  BLOB DEFAULT (UNHEX('long HEX literal')),
                             ... );
    

    注意包裹表达式的括号(示例中的 UNHEX() 函数) - 它们是强制性的!单个DEFAULT UNHEX('long HEX literal')会产生语法错误。

    【讨论】:

      猜你喜欢
      • 2013-08-05
      • 2014-04-11
      • 2015-05-24
      • 1970-01-01
      • 2011-05-19
      • 1970-01-01
      • 2013-11-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多