Php SQLSTATE[42S02]:找不到基表或视图:1146表
我正在创建laravel的注册部分。我的表名是“Php SQLSTATE[42S02]:找不到基表或视图:1146表,php,mysql,laravel-5,Php,Mysql,Laravel 5,我正在创建laravel的注册部分。我的表名是“owner”,我在代码中写了“owner”作为表名,但当我尝试提交注册表时,仍然会看到错误页面 SQLSTATE[42S02]: Base table or view not found: 1146 Table 'engage.owners' doesn't exist (SQL: insert into owners..... 由于我的engage数据库中没有owners表,我不知道为什么它试图插入owners表而不是owner表。根据文档:
owner
”,我在代码中写了“owner
”作为表名,但当我尝试提交注册表时,仍然会看到错误页面
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'engage.owners' doesn't exist (SQL: insert into owners.....
由于我的engage
数据库中没有owners
表,我不知道为什么它试图插入owners
表而不是owner
表。根据文档:
您可以这样更改它:
名称空间应用程序
使用Illumb\Database\Elount\Model
class Flight extends Model
{
/**
* The table associated with the model.
*
* @var string
*/
protected $table = 'my_flights';
}
请记住,我从未与laravel合作过。在应用程序部署到主机的过程中,我也遇到了同样的问题,尽管在我的本地服务器上一切正常。事实证明,我在代码中有一个
SELECT
,它从ARTISTS
表中获取数据。在我的数据库中,我的表被写成artists
(小写字母)。也许这是MySQL的问题(在我的例子中),因为我在本地安装了版本8,在主机上是5.6
MySQL中还有一个严格的模式,您可以关闭它来避免这个问题。可能是因为laravel将表名转换为复数?那么解决方法是什么?我应该将表名重命名为“所有者”吗?您能给我们提供您的型号吗?如果您使用的是eloquent else,请向您提供laravel db查询