मैंने जिस तकनीक का उपयोग किया है वह दृश्य के आधार पर एक इकाई बनाने के लिए है:
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)
या आप सिद्धांत के साथ नया तालिका नाम निर्दिष्ट कर सकते हैं और इसे बना सकते हैं:
php app/console doctrine:schema:update --dump-sql
उसके बाद एक
php app/console doctrine:schema:update --force
फिर नियंत्रक में अपनी इकाई का उपयोग करें, जितना आसान हो।