我在将字段保存到数据库时遇到错误,这给我以下错误:字符串数据,右截断:1406第1行的“内容”列的数据太长。
但是,数据库中的字段设置为“类型:字符串,长度为191”。我相信可以将其转换为varchar。
还有其他人吗?
答案 0 :(得分:0)
https://stackoverflow.com/a/13182846/2693543
从以上答案中复制
VARCHAR(X)例:用户名,电子邮件,国家/地区,主题,密码
TEXT大小写:邮件,电子邮件,评论,格式化的文本,html,代码, 图片,链接
MEDIUMTEXT案例:大型json正文,中短长度的书籍,csv 字符串
LONGTEXT案例:教科书,程序,日志文件的年限,哈利·波特 和火焰杯,科研测井
答案 1 :(得分:0)
在您的迁移文件中使用它,它将更改您的列数据类型,然后您可以将html内容毫无问题地保存到其中。
public function up()
{
Schema::table('the_table_name', function () {
$table->longText('columnName')->change();
});
}
public function down()
{
Schema::dropIfExists('the_table_name');
}
答案 2 :(得分:-1)
您应该不将帖子或页面的内容(包含大量text / html的内容)存储为String
。
对于MySQL列类型,请改为使用TEXT
,该类型允许在其中输入足够的字符。