如何在 MySQL Workbench 中使默认 blob 成为图像?
Posted
技术标签:
【中文标题】如何在 MySQL Workbench 中使默认 blob 成为图像?【英文标题】:How to make default blob an image in MySQL Workbench? 【发布时间】:2021-05-31 15:56:44 【问题描述】:我知道如何将图像上传到我的数据库,但我如何才能使我的计算机中的 longblob/blob 的默认图像而不是 null?
【问题讨论】:
【参考方案1】:将 DEFAULT 属性设置为 BLOB 列(当然 NULL 除外)的唯一方法是将其指定为表达式。
如果您想将 DEFAULT 值设置为某个图像,那么您可以:
-
将此图像加载到 BLOB 列中。例如
CREATE temptable (blob_column BLOB)
SELECT LOAD_FILE('image_filename') AS blob_column;
-
将加载的二进制值转换为可以在表定义中键入的某些文本表示。例如,使用 HEX() 函数
SELECT HEX(blob_column)
FROM temptable;
将在输出中获得长字符串文字。
-
在 BLOB 列的 DEFAULT 值的表达式中使用获得的文字(复制粘贴,避免过多的换行符/空格/截断/等)。应用与步骤 2 中应用的转换相反的表达式。喜欢
CREATE TABLE tablename ( ...
blob_column_name BLOB DEFAULT (UNHEX('long HEX literal')),
... );
注意包裹表达式的括号(示例中的 UNHEX() 函数) - 它们是强制性的!单个DEFAULT UNHEX('long HEX literal')
会产生语法错误。
【讨论】:
以上是关于如何在 MySQL Workbench 中使默认 blob 成为图像?的主要内容,如果未能解决你的问题,请参考以下文章