如果我不知道文本的长度,如何使用varbinary

时间:2016-07-07 14:59:08

标签: mysql encryption text aes varbinary

我想在mysql中使用AES加密文本,但我遇到一个小问题,因为你需要使用varbinary来存储它们。

我的一些数据类型是varchar,是的,我可以计算出我的varbinary的长度。但是对于我的地址字段,我使用TEXT数据类型,因为我们存储了中文地址,这些地址可能很长。我使用TEXT数据类型,因为您不需要在mysql中指定长度。

问题是使用varbinary你需要指定一个长度,我真的不知道长度,因为地址可以是任意长度。

我可以使用哪种二进制数据类型用于AES,我不必指定数据的长度吗?

1 个答案:

答案 0 :(得分:3)

根据评论 - 您需要BLOB数据类型,这是二进制大对象的简称(感谢Maarten Bodewes澄清)。

BLOB数据类型不会存储包含该信息的字符集,并且相当于TEXT类型,没有字符集。正如评论中所提到的,还有其他类型,例如MEDIUMBLOBTINYBLOBLARGEBLOB,它们都包含在MySQL's manual page中。