sql >> データベース >  >> RDS >> Mysql

Symfony2、Doctrine2、MySql、ビューテーブル

    私が使用した手法は、ビューに基づいてエンティティを作成することです:

    php app/console doctrine:generate:entity
    

    作成されたエンティティアノテーションの次のパラメータを確認します: /** * @ORM\Table(name="table_name") * @ORM\Entity(repositoryClass="AppBundle\Repository\TableNameRepository") */

    次に、SQLコマンドを使用して新しいテーブルを作成します:

    CREATE TABLE Table_Name 
    AS 
    SELECT v.field1,v.field2,v.field3,w.field4 
    FROM view1 v,view2 w 
    WHERE v.id=w.id;
    

    主キーのような教義をビューに追加するには、次のステートメントを使用します:

    ALTER TABLE Table_Name ADD INT PRIMARY KEY AUTO_INCREMENT NOT NULL;
    ALTER TABLE Table_Name ADD CONSTRAINT pk_id PRIMARY KEY(id)
    

    または、Doctrineで新しいテーブル名を指定し、:

    で作成することもできます。
    php app/console doctrine:schema:update --dump-sql
    

    が続きます
    php app/console doctrine:schema:update --force
    

    次に、それと同じくらい簡単に、コントローラーでエンティティを使用します。



    1. MySQLエラー1241:オペランドには1つの列が含まれている必要があります

    2. PostgresqlDROPTABLEが機能しない

    3. MySQLユーザー管理

    4. ユーザー定義の集計(clr)をウィンドウ関数(以上)で使用することは可能ですか?