VARBINARY(MAX) 是什么意思?

What does VARBINARY(MAX) mean?

我正在尝试将 MSSQL 数据库移植到 MariaDB,我遇到了 table 使用 varbinary(max) 创建的问题:

    `definition` VARBINARY(max) NULL DEFAULT NULL

这实际上会做什么,MariaDB 中是否有我可以使用的等效类型定义?

在SQL服务器中,VARBINARY是可变长度的二进制数据,MAX scale值表示最多存储2^31-1字节。

我认为最接近的等效 MariaDB 数据类型是 LONGBLOB,它最多可以存储 2^32-1 个字节。

正如其他人在评论中所说,MSSQL中的VARBINARY(max)是指:

Variable-length binary data.

max indicates that the maximum storage size is 2^31-1 bytes.

根据我在 MariaDB 文档中的发现,在 MariaDB 中获得类似存储大小的唯一方法是使用 LONGBLOB 数据类型:

LONGBLOB

A BLOB column with a maximum length of 4,294,967,295 bytes or 4GB (2^32 - 1).

有用的链接:

https://msdn.microsoft.com/en-us//library/ms188362.aspx

http://www.techonthenet.com/mariadb/datatypes.php