Según tengo entendido, el tipo de datos largos puede almacenar la cadena real (caracteres), mientras que el tipo de datos sin procesar de Long almacena los valores binarios de la cadena (caracteres). ¿Es correcto? ¿Puede una tabla tener solo una columna de tipo largo?¿Cuál es la diferencia entre los tipos de datos brutos largos y largos en Oracle?
Respuesta
Los tipos de datos se describen en la documentación; LONG
is explained here (o la 11gR2 version):
LONG almacenar columnas cadenas de caracteres de longitud variable que contienen hasta 2 gigabytes -1, o 231-1 bytes. Las columnas LARGAS tienen muchas de las características de las columnas VARCHAR2. Puede usar columnas LONG para almacenar cadenas de texto largas .
El RAW y LONG RAW almacenar datos de tipos de datos que no ha de ser interpretado (es decir, no se convierten explícitamente al mover datos entre diferentes sistemas) por base de datos Oracle. Estos tipos de datos son destinados a datos binarios o cadenas de bytes. Por ejemplo, puede usar LONG RAW para almacenar gráficos, sonido, documentos o matrices de datos binarios , cuya interpretación depende del uso.
Así que un RAW
o LONG RAW
puede contener la representación binaria de caracteres, pero no estarán sujetos a la conversión del juego de caracteres, etc. así que probablemente no es tan útil para eso; una puede contener cualquier otro dato binario, cualquier cosa que no se supone que represente texto.
De la misma sección LONG
:
Una tabla puede contener sólo una columna LONG.
Sin embargo, LONG
está en desuso en favor de LOB
(CLOB
o NCLOB
para el texto, BLOB
para todo lo demás), por lo que no debe usarlos para un nuevo trabajo, y debe al menos estar considerando la sustitución de cualquiera que ya tener. De nuevo desde esa misma sección en LONG
:
No cree tablas con columnas LARGAS. Utilice columnas LOB (CLOB, NCLOB, BLOB) en su lugar. Las columnas LONG solo son compatibles con la compatibilidad con versiones anteriores de .
Oracle también recomienda que convierta columnas LONG existentes a columnas LOB .
Esto documentation on migrating from LONG
to LOB
podría ser de su interés.
- 1. java Comparación de tipos de datos largos
- 2. NSDecimalNumber y enteros largos largos sin firmar (64 bits)
- 3. ¿Cuál es la diferencia entre los tipos de datos y los literales en Java?
- 4. ¿Cuál es la diferencia entre los datos-dojotype y dojoType?
- 5. Nombres de variable largos
- 6. ¿Cuál es la diferencia entre MySQL BOOL y los tipos de datos de columna BOOLEAN?
- 7. ¿qué es equivalente al tipo de datos largos en postgresql?
- 8. literales enteros largos
- 9. Rendimiento de ID largos
- 10. ¿Los métodos muy largos siempre necesitan refactorización?
- 11. enteros largos PHP para ahorro
- 12. Cómo usar el tipo de datos largos en C?
- 13. Ison-encoding iterators muy largos
- 14. elementos largos ListBox indica
- 15. NSDecimalNumber redondo números largos
- 16. ¿Cómo formatear números largos?
- 17. En una base de datos Oracle, ¿cuál es la diferencia entre ROWNUM y ROW_NUMBER?
- 18. ¿Multiplicar valores largos?
- 19. Comandos de Emacs y Shell largos
- 20. Error de SQL 1406 Datos demasiado largos para la columna
- 21. ¿Cuál es la diferencia entre los tipos de cadenas VARCHAR (255) y TINYTEXT en MySQL?
- 22. ¿Cuál es la diferencia entre pls_integer y binary_integer?
- 23. ¿Cuál es la diferencia entre los tipos Bool y Boolean en C#
- 24. heightForRowAtIndexPath para NSStrings más largos
- 25. Android - recibir SMS largos (multiparte)
- 26. formateando números largos como cadenas en python
- 27. En clics largos, elimine el elemento
- 28. ¿Cuál es la diferencia entre Cassandra vs Oracle Coherence?
- 29. ¿Cuál es la diferencia entre los tipos de archivo .Resx y .Resources?
- 30. Diferencia entre los tipos _Bool y bool en C?
Los tipos de datos Oracle LONG solo están disponibles para compatibilidad con versiones anteriores. Mejor mira en los tipos de datos BLOB/CLOB. – Rene