2009-07-24 6 views
15

Oracle ha un tipo di colonna equivalente al tipo TEXT di MySQL?Oracle Equivalent di tipo TEXT di MySQL

In caso contrario, in che modo vengono memorizzati in genere grandi quantità di testo? BLOB, varchar(32767)? È possibile accedere a Oracle 10 tramite PHP, se è importante. Il contesto storico è più che benvenuto.

risposta

12

Oracle ha BLOB, CLOB e NCLOB per l'archiviazione di tipi di dati di carattere binario, carattere e unicode. È inoltre possibile specificare l'area di stoccaggio LOB che consente a un amministratore di database per mettere a punto la memoria, se necessario (cioè mettendo i dati LOB su dischi separati)

Questa pagina dà un po 'più di informazioni: http://www.dba-oracle.com/t_blob.htm

+3

I documenti ufficiali: http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/datatype.htm#i3237 –

6

Penso che probabilmente si desidera il tipo di dati CLOB.

2

Il carattere Grande L'oggetto (CLOB) è probabilmente quello che stai cercando. Tuttavia, se sai che tutto il testo si inserirà in un VARCHAR2, allora mettilo definitivamente lì. Un clob non può essere usato in una clausola group by ed è molto più lento da usare di un varchar2 nella maggior parte dei casi. Se si sa che si supererà il limite di 4000 byte, utilizzare il CLOB (che può gestire fino a 4 GB).

0

Oracle SQL ha un limite di 4000 caratteri per una colonna VARCHAR2 (Oracle PL/SQL ha un limite superiore di 32.767 caratteri). Come indicato dagli altri, CLOB è adatto per memorizzare grandi quantità di testo.

1

È necessario utilizzare CLOB. Sta per Personaggio Oggetto grande.

Un CLOB viene utilizzato per memorizzare dati basati su caratteri unicode, come documenti di grandi dimensioni in qualsiasi set di caratteri.

Il valore può essere fino a 2,147,483,647 caratteri.