是否可以将二进制数据插入MySQL TEXT
列?我有一个表,我想用于存储 UTF-8 文本和二进制数据(非常基本的结构 - id int(11), type char(1), data text
(,但是当我尝试将一些二进制数据(JPEG 图像(插入data
列时,该列为空。
我在 PHP 中使用 mysql_query
和 mysql_real_escape_string
来执行 INSERT 查询,它们都应该是二进制安全的。示例代码:
mysql_query("INSERT INTO my_table VALUES(" . (int)$id . ", 'b', '" . mysql_real_escape_string($jpegImageData) . "')");
我不想将data
列类型更改为BLOB
- 在某些情况下,我需要使用此列来比较/整理字符串。
为什么不呢?只需在 base64 中编码并将其放入该字段中即可。
<?php
$str = 'Some UTF-8 string or even a binary array';
echo base64_encode($str);
?>