【发布时间】:2018-09-18 06:09:33
【问题描述】:
我正在尝试使用 laravel 在 mysql 数据库中存储 400 个字符的长密钥。 我在 laravel 迁移表中尝试过字符串、文本、长文本,但没有成功
我收到了这个错误
code
:
"22001"
message
:
"SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column 'api_token' at row 1 (SQL: update `users` set `api_token` = eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9lbnRyYW5jZWluZGlhLm5ldFwvYXBpXC9hdXRoZW50aWNhdGUiLCJpYXQiOjE1MjMyMjE4MTcsImV4cCI6NDY3NjgyMTgxNywibmJmIjoxNTIzMjIxODE3LCJqdGkiOiIzclFvNGpzMmg0aUZQcmRvIiwic3ViIjozMiwicHJ2IjoiODdlMGFmMWVmOWZkMTU4MTJmZGVjOTcxNTNhMTRlMGIwNDc1NDZhYSJ9.LxjArPNzTGqZh59JE4YN87oQUajfM28vyl2pnTokweA, `updated_at` = 2018-04-08 21:10:19 where `id` = 32)"
status_code
:
500
【问题讨论】:
-
显示用户表定义。
-
您也忘记了字段 api_token 值的单引号。
-
Schema::create('users', function (Blueprint $table) { $table->increments('id'); $table->string('fname'); $table-> string('lname'); $table->string('mobile')->unique(); $table->string('email')->unique(); $table->string('api_token',400 )->nullable();$table->rememberToken();$table->timestamps();