Ir al contenido
Menú principal
Menú principal
mover a la barra lateral
ocultar
Navegación
Página principal
Cambios recientes
Página aleatoria
Ayuda sobre MediaWiki
Buscar
Buscar
español
Apariencia
Crear una cuenta
Acceder
Herramientas personales
No has accedido
Discusión
Contribuciones
Crear una cuenta
Acceder
Edición de «
SQL:1999
»
Página
Discusión
español
Leer
Editar
Editar código
Ver historial
Herramientas
Herramientas
mover a la barra lateral
ocultar
Acciones
Leer
Editar
Editar código
Ver historial
General
Lo que enlaza aquí
Cambios relacionados
Información de la página
Apariencia
mover a la barra lateral
ocultar
Advertencia:
no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si
inicias sesión
o
creas una cuenta
, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Comprobación antispam. ¡
No
rellenes esto!
'''SQL:1999''' (también llamado SQL3) fue la cuarta revisión del estándar [[SQL]]. Introdujo un gran número de nuevas características, muchas de las cuales requirieron aclaraciones en el posterior [[SQL:2003]]. La última revisión del estándar es [[SQL:2016]]. Este estándar describe, entre otras cosas, la gramática de SQL y el resultado que se produce tras procesar instrucciones en un lenguaje basado en SQL. ==Resumen== Los documentos de la norma ISO fueron publicados entre 1999 y 2002 en varias entregas, la primera consistió en múltiples partes. A diferencia de las ediciones anteriores, el nombre del estándar usaba dos puntos en lugar de un guion para la coherencia con los nombres de otros estándars [[Organización Internacional de Normalización|ISO]]. La primera versión de SQL:1999 tenía cinco partes: *SQL/Framework [http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=26196 ISO/IEC 9075-1:1999] *SQL/Foundation [http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=26197 ISO/IEC 9075-2:1999] *SQL/CLI [http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=30609 ISO/IEC 9075-3:1999] *SQL/PSM [http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=29864 ISO/IEC 9075-4:1999] *SQL/Bindings [http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=26198 ISO/IEC 9075-5:1999] Tres partes más, también consideradas parte de SQL:1999 fueron publicadas posteriormente: *[[SQL/MED]] Management of External Data (SQL:1999 part 9) [http://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=31370 ISO/IEC 9075-9:2001] *[[SQL/OLB]] Object Language Bindings (SQL:1999 part 10) [http://www.iso.org/iso/catalogue_detail.htm?csnumber=30613 ISO/IEC 9075-10:2000] *[[SQL/JRT]] SQL Routines and Types using the Java Programming Language (SQL:1999 part 13) [http://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=35340 ISO/IEC 9075-13:2002] ==Nuevas características== === Tipos de datos === ====Tipos de datos booleanos==== El estándar SQL:1999 llama a un tipo [[booleano]], pero muchos servidores SQL comerciales ([[Oracle Database]], [[IBM DB2]]) no lo admiten como un tipo válido de columna, un tipo de variable o para permitirlo en el conjunto de resultados. [[Microsoft SQL Server]] es uno de los pocos sistemas de bases de datos que soporta correctamente los valores de tipo booleano usando su tipo de datos "BIT". Cada 8 campos BIT ocupa un byte completo de espacio en el disco. [[MySQL]] interpreta "BOOLEAN" como sinónimo de TINYINT (entero con signo de 8 bits). [[PostgreSQL]] proporciona un tipo booleano de conformidad estándar. ==== Distintos tipos de poder definidos por el usuario ==== A veces llamados "tipos distintos", estos se introdujeron como una característica opcional (S011) para permitir que los tipos atómicos existentes se ampliaran con un significado distintivo para crear un nuevo tipo y permitir así, al mecanismo de comprobación de tipos, detectar algunos errores lógicos, por ejemplo, agregando accidentalmente una edad a un salario. Otro ejemplo: <syntaxhighlight lang="sql"> create type age as integer FINAL; create type salary as integer FINAL; </syntaxhighlight> crea dos tipos diferentes e incompatibles. Los tipos distintos de SQL utilizan equivalencias de nombres, no equivalencias estructurales como [[typedef]] en C. Todavía es posible realizar operaciones compatibles, en columnas o datos, de tipos distintos utilizando un tipo de datos explícito <code>CAST</code>. Pocos sistemas SQL soportan esto. [[IBM DB2]] es uno de los que los soporta, [[Oracle Database]] actualmente no los soporta recomendando, en su lugar, para emularlos con una sola [[estructura de datos]]. ==== Tipos estructurados definidos por el usuario ==== Estos son la columna vertebral de la extensión [[mapeo objeto-relacional]] en SQL:1999. Son análogas a las [[Clase (informática)|clases]] en [[programación orientada a objetos]]. SQL:1999 permite solo [[herencia simple]]. ===Expresiones de tablas comunes y consultas recursivas=== SQL:1999 agregó una construcción WITH [RECURSIVE] que permite que las consultas recursivas, como [[Clausura transitiva]], se especifiquen en el propio lenguaje de consulta. Mediante [[Expresión regular|expresiones regulares]]. === Algunas capacidades de OLAP === GROUP BY fue extendido con ROLLUP, CUBE, y GROUPING SETS. === Control de acceso basado en funciones === Suporte completo para [[control de acceso basado en funciones]] a través de CREATE ROLE. === Palabras claves === SQL:1999 introdujo la palabra clave UNNEST. == Enlaces externos == * [https://www.iso.org/standard/16289.html ISO 8824-1:1995, Information technology — Specification of Abstract Syntax Notation One (ASN.1) — Part 1: Specification of basic notation] * [https://www.iso.org/standard/26197.html ISO/IEC 9075-2:1999, Information technology — Database languages — SQL — Part 2: Foundation (SQL/Foundation).] * [https://www.iso.org/standard/30609.html ISO/IEC FDIS 9075-3:1999, Information technology — Database languages — SQL — Part 3: Call-Level Interface (SQL/CLI).] * [https://www.iso.org/standard/29864.html ISO/IEC 9075-4:1999, Information technology — Database languages — SQL — Part 4: Persistent Stored Modules (SQL/PSM).] * [https://www.iso.org/standard/26198.html ISO/IEC 9075-5:1999, Information technology — Database languages — SQL — Part 5: Host Language Bindings (SQL/Bindings).] * [https://www.iso.org/standard/18741.html ISO/IEC 10646-1:1993, Information technology — Universal Multi-Octet Coded Character Set (UCS) — Part 1: Architecture and Multilingual Plane.] * [https://www.iso.org/standard/79392.html ISO/IEC CD 14651, Information technology — International String Ordering — Method for comparing Character Strings.] * [https://home.unicode.org/ The Unicode Consortium] {{Control de autoridades}} [[Categoría:SQL]]
Resumen:
Al guardar los cambios aceptas los
términos de uso
y liberas de forma irrevocable tu contribución conforme a los términos de las licencias
licencia CC BY-SA 4.0
y
GFDL
. Aceptas igualmente que un hipervínculo o URL es atribución suficiente conforme a la licencia Creative Commons.
Cancelar
Ayuda de edición
(se abre en una ventana nueva)
Buscar
Buscar
Edición de «
SQL:1999
»
Añadir idiomas
Añadir tema