Laravel 迁移中的 Text 和 LongText 有什么区别?

K. *_*mil 7 php laravel

迁移文件部分如下所示:

Schema::create('samples', function (Blueprint $table) {
        $table->id();
        $table->text('title1');
        $table->longText('title2');
        $table->timestamps();
    });
Run Code Online (Sandbox Code Playgroud)

Al-*_*min 9

这与 Laravel 迁移无关,而是与表列的数据类型相关,该数据类型取决于文本字符串的大小。

\n

TINYTEXT:255 个字符 - 255 B

\n

TINYTEXT数据对象是该系列中最小的一个TEXT,旨在有效地存储短信息字符串。该类型最多可以存储 255 个字节(表示为 2^8 -1)或 255 个字符,并且需要 1 个字节的开销。该对象可用于存储简短摘要、URL 链接和其他较短对象等内容。当存储\xe2\x80\x99s低于255个字符且长度不一致且不需要用于排序标准的数据时,它会TINYTEXT表现出色。VARCHAR

\n

文本:65,535 个字符 - 64 KB

\n

标准TEXT数据对象足以处理典型的长格式文本内容。TEXT数据对象的最大大小为 64 KB(表示为 2^16 -1)或 65,535 个字符,并且需要 2 字节的开销。它足够大,足以容纳文章之类的文本,但不足以容纳整本书的文本。

\n

中文本:16,777,215 个字符 - 16 MB

\n

数据MEDIUMTEXT对象对于存储较大的文本字符串(例如白皮书、书籍和代码备份)非常有用。这些数据对象可以大到 16 MB(表示为 2^24 -1)或 16,777,215 个字符,并且需要 3 个字节的开销存储。

\n

长文本:4,294,967,295 个字符 - 4 GB

\n

LONGTEXT数据对象用于极端文本字符串存储用例。MEDIUMTEXT当对象不够大时,这是一个可行的选择。计算机程序和应用程序通常会达到该范围内的文本长度LONGTEXT。这些数据对象最大可达 4 GB(表示为 2^32 -1),最多可存储 4,294,967,295 个字符,并需要 4 字节的开销存储

\n

请注意,列中可以存储的字符数取决于字符编码。

\n


jer*_*edy 0

文本最多可处理 65,535 个字符

长文本最多可处理 4,294,967,295 个字符