Php 表存在,但获取错误SQLSTATE[42S02]:未找到基表或视图:1146 Table';exyz.输入#u字段';不';不存在
我正在尝试插入来自laravel seeder的值。所有其他表都插入了数据,但我仍然停留在输入字段表上。即使它在我的本地Mamp服务器上工作也非常好,但当我尝试在Live server上运行时,出现了错误,但正如我看到的,表名存在于我的数据库中。我也运行“composer dumpautoload”,但仍然面临同样的问题 inputField.phpPhp 表存在,但获取错误SQLSTATE[42S02]:未找到基表或视图:1146 Table';exyz.输入#u字段';不';不存在,php,mysql,laravel-5,migration,laravel-seeding,Php,Mysql,Laravel 5,Migration,Laravel Seeding,我正在尝试插入来自laravel seeder的值。所有其他表都插入了数据,但我仍然停留在输入字段表上。即使它在我的本地Mamp服务器上工作也非常好,但当我尝试在Live server上运行时,出现了错误,但正如我看到的,表名存在于我的数据库中。我也运行“composer dumpautoload”,但仍然面临同样的问题 inputField.php namespace App; use Illuminate\Database\Eloquent\Model; class inputField
namespace App;
use Illuminate\Database\Eloquent\Model;
class inputField extends Model
{
protected $table = 'input_fields';
public function dropDown()
{
return $this->belongsTo('App\dropDown', 'drop_id');
}
}
2017_10_13_093801_输入_字段
Schema::create('input_Fields', function (Blueprint $table) {
$table->increments('id');
$table->string('field_name');
$table->string('cat_id');
$table->string('description');
$table->string('drop_id')->nullable();
$table->rememberToken();
$table->timestamps();
});
InputFieldsTableSeeder.php
$inputvalue = new inputField();
$inputvalue->field_name = 'Bilirubin Total';
$inputvalue->cat_id = '1';
$inputvalue->description = '0.0 - 1.2';
$inputvalue->save();
你的字母大小写有点不一致
$table = 'input_fields'
及
不同的环境/配置可以对表名的大小写敏感度进行不同的设置。试着保持一致,改变现状
create('input_fields', ...)
而且应该会更好。看起来你的字母大小写有点不一致
$table='input\u fields'
vscreate('input\u fields',…
)。我不知道在创建表时,Laravel是否会将名称标准化为较低的值,但如果没有,则可能会出现问题。不同的环境/配置可能会对表名的大小写敏感度有不同的设置。请尝试保持一致(更改为create)('input_fields',…
)然后看看效果是否更好。那么,这样做是成功的还是错误仍然存在?非常感谢。这对我来说非常有效。但是你能告诉我为什么它在本地服务器之前有效,而不是在live server上有效吗?:-。就像我在第一条评论中说的:“不同的环境/配置可以对表名的大小写敏感度进行不同的设置”我发布了一个答案。请随意接受它,以便其他人知道问题已经解决。
create('input_fields', ...)