2015-01-29 17 views
6

Ho questa annotazione:Come ottenere il tipo Doctrine TEXT?

/** 
* @ORM\Column(name="notes", type="string", length=65532, nullable=true) 
*/ 
protected $notes; 

Secondo questo documento - http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id102 perché è inferiore a 65535 dovrebbe essere TESTO?

Ma la colonna viene creata come MEDIUMTEXT.

Come posso risolvere questo problema?

+5

Per chiunque sia interessato, la risposta è: '@ORM \ Colonna (name = "note", type = "text", lunghezza = 65535, nullable = true)' – b85411

+3

Aggiungi questo come risposta e lo accetto;) –

risposta

7

Si sta facendo riferimento al tipo non corretto nella documentazione. Nel tuo codice hai type="string" ma il tuo riferimento alla documentazione è relativo a type="object".

Se leggete la parte della tabella sopra riportata nei documenti cui si fa riferimento si vedrà che string è realizzata mediante fusione per VARCHAR in MySQL se length non è superare la lunghezza massima per MySQL ed è colato a MEDIUMTEXT se length supera.

Ma se si desidera ottenere esplicitamente il campo TEXT, sarà necessario definire la colonna con type="text".

Problemi correlati