我在网上搜索了varchar max的教程。我甚至试过
$table->string('name', "MAX");
这给了我一个错误。
如何为laravel项目的博客文章设置varchar max。感谢
答案 0 :(得分:12)
为了定义文本字段的最大长度,只需提供最大长度限制作为第二个参数:
$table->string('name', 64);
这将导致在MySQL数据库中创建 VARCHAR 列。请记住,如果最大长度非常高,则可能会创建不同类型的字段(mediumtext,longtext)。
答案 1 :(得分:3)
所以在Laravel中你必须使用多个字节而不是自动最大值。最新版MySQL中的最大长度为65,535字节,但整行需要小于此值。因此,如果这是行中唯一的长文本字段,那么您应该可以从最大值中减去一点并使用它。如果您要在一行中包含多个长文本字段,则需要减去其他字段的长度然后除以。
假设这是您博客领域唯一的大文字字段,您可能只会这样做:
$table->string('name', 60000);
答案 2 :(得分:2)
将文本用于varchar(max):
$table->text('name');
答案 3 :(得分:2)
在app / Auth / Providers中,将文件AppServiceProvider.php设置为:
use Illuminate\Support\ServiceProvider;
和启动功能:
Schema::defaultStringLength(191);
答案 4 :(得分:0)
因为这是mysql或mariadb或...中的varchar类型。 VARCHAR支持最大大小为65535个字符。
$table->string('name', "65535");