イムサーバー上にsymfony 2アプリケーションを実行しようとすると、私はエラーを持っている:symfonyの2ラン
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'Slider'
doesn't exist
しかし、表がデータベースに存在しています。テーブル名は「スライダ」ではなく「スライダ」であるということです。 I dont want to change names of all tables.
イムサーバー上にsymfony 2アプリケーションを実行しようとすると、私はエラーを持っている:symfonyの2ラン
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'Slider'
doesn't exist
しかし、表がデータベースに存在しています。テーブル名は「スライダ」ではなく「スライダ」であるということです。 I dont want to change names of all tables.
あなたはエンティティ名と一致するすべてのテーブルの名前を変更する必要がある、またはあなたのエンティティで定義を変更することができます。
/**
* @ORM\Entity
* @ORM\Table(name="foo")
*/
class Foo
{
}
おそらく、WindowsやOSXのような大文字小文字を区別しないOS上でアプリケーションを開発している、と今はLinuxサーバーにデプロイするのですが、そうですか?これを防ぐための唯一の方法は、表の注釈を使用して、エンティティクラスにtablenameを定義することです。
@ORM\Table(name="Slider")
私は既にこれを行っています。しかし、今私は好奇心が強い、他の、より迅速な解決策がある。 – Pawel
これはMySQLの問題です。このドキュメントを見てみてください。http://dev.mysql.com/doc/refman/5.0/en/identifier-case-sensitivity.html –