2016-03-07 68 views
1

我試圖運行架構創建工具與教條。我的db是postgresql。我目前得到的錯誤:學說2與nam表不存在

[Doctrine\DBAL\Schema\SchemaException]    
    The table with name 'tracon.users' already exists. 

錯誤只有當我嘗試使用一個以上的實體運行情況:

php vendor/bin/doctrine orm:schema-tool:update 

php vendor/bin/doctrine orm:schema-tool:create 

爲例。如果我用戶實體文件夾中唯一的實體,它的工作原理!

<?php 
namespace entities; 

use Doctrine\ORM\Mapping; 
use Doctrine\ORM\Mapping\Table; 

// entities/Users.php 

/** 
* @Entity 
* @Table(name="users") 
* @Table(schema="development") 
**/ 
class Users { 
    /** 
    * @var integer 
    * 
    * @Id 
    * @Column(name="id", type="integer") 
    * @GeneratedValue(strategy="AUTO") 
    */ 
    protected $id; 

    /** 
    * @var string 
    * @Column(type="string", length=64) 
    */ 
    protected $username; 

    /** 
    * @var string 
    * @Column(type="string", length=64) 
    */ 
    protected $first_name; 

    /** 
    * @var string 
    * @Column(type="string", length=64) 
    */ 
    protected $last_name; 

    /** 
    * @var string 
    * @Column(type="string", length=255) 
    */ 
    protected $email; 

} 

但只要我添加其他實體類像下面的「媒體」之一,它抱怨表已經存在:

<?php 
namespace entities; 

use Doctrine\ORM\Mapping; 

// entities/Media.php 

/** 
* @Entity 
* @Table(name="development.media") 
**/ 
class Media { 
    /** 
    * @var integer 
    * 
    * @Id 
    * @Column(name="id", type="integer") 
    * @GeneratedValue(strategy="AUTO") 
    * 
    */ 
    protected $id; 

    /** 
    * @var string 
    * @Column(type="string", length=64) 
    */ 
    protected $file_name; 

    /** 
    * @var string 
    * @Column(type="string", length=64) 
    */ 
    protected $file_url; 

    /** 
    * @var string 
    * @Column(type="string", length=64) 
    */ 
    protected $file_extension; 


} 

什麼導致這個錯誤?此外,它似乎架構不註冊。

+0

由於錯誤提到它,你確定該表不存在嗎? '名爲'tracon.users'的桌子已經存在了。' –

+0

積極的,我甚至放棄了數據庫,仍然得到這個錯誤。 –

+0

@Table(name =「'users'」)測試更改@Table(name =「users」)'' – yceruto

回答

1

Cache!用這個命令清除緩存解決了這個問題:

php vendor/bin/doctrine orm:clear-cache:metadata 
+0

即使這樣做,我仍然有這個問題,有什麼想法? –