Da quello che ho letto, il modo preferito per memorizzare uno Java UUID
in Oracle is in a RAW(16)
column. Quando ho suggerito di utilizzare questo per il mio DBA, ha commentato che il tipo RAW
è stato ritirato in Oracle 8i e fornito come prova this page. Tuttavia, da quello che vedo su quella pagina, LONG RAW
è deprecato, ma non RAW
. Ho trovato a few places where others have raised similar questions, ma non ho trovato una risposta definitiva. Sembra anche che sia numerousreferences al tipo di dati RAW
nelle recenti note di rilascio di Oracle che mi induce a credere che il tipo sia ancora supportato. Qualcuno può fornire una risposta autorevole su questo, preferibilmente con una prova adeguata da Oracle?Il tipo RAW è deprecato in Oracle?
risposta
RAW
è completamente supportato ed è l'unico modo per memorizzare piccole quantità di dati binari che impediranno a Oracle di eseguire la conversione del set di caratteri.
LONG
e LONG RAW
sono entrambi obsoleti a supporto dei tipi di dati CLOB
e BLOB
.
È difficile trovare la documentazione che dice che qualcosa non è deprecato. This discussion of RAW
and LONG RAW
è probabilmente il più vicino. Richiama esplicitamente il fatto che non si dovrebbe usare LONG RAW
ma non si fa alcun punto simile su RAW
.
http://docs.oracle.com/cd/B28359_01/server.111/b28318/datatype.htm#i4146 – zloctb
Non c'è alcun sostituto per 'RAW'. 'RAW' è per' BLOB' come 'VARCHAR2' è per' CLOB'. – ibre5041
Questa domanda non ha molto a che fare con Java, quindi sto rimuovendo quel tag. Sembra quasi una pura domanda Oracle. – yshavit
il tuo DBA non è corretto. RAW e LONG RAW non sono la stessa cosa. Vedi [qui] (http://docs.oracle.com/cd/E11882_01/server.112/e26088/sql_elements001.htm#SQLRF50993) per ulteriori informazioni. LONG RAW dovrebbe usare BLOB. – tbone