lunes, 13 de marzo de 2017

JSON en SQL Server 2016: Página 1 de 4 Páginas

JSON es actualmente uno de los formatos de intercambio de datos el más comúnmente usados. Los servicios más modernos devuelven la información formateada como el texto de JSON; los navegadores web usan la información formateada como JSON. JSON es el formato común cuando la información semiestructurada tiene que ser almacenada, tal como en archivos. Como muchos datos son formateados como JSON, es importante permitir a Servidor SQL tratar el texto JSON recuperado de otros sistemas o formatear la información recuperada de mesas del Servidor SQL como el texto de JSON. 
Como el rasgo más solicitado en Microsoft SQL Server unen el sitio, con más de 1,000 votos, el apoyo al procesamiento del texto JSON ha sido añadido al Servidor SQL 2016. En este correo, presentaremos una descripción de alto nivel de la funcionalidad JSON en el Servidor SQL 2016.

Visión en General

JSON funciones en SQL Server le permiten analizar y consultar datos JSON, transformar JSON formato relacional y exportar los resultados de una consulta SQL como texto JSON.
Si tiene texto JSON, puede extraer datos de JSON o verificar que JSON es formateado correctamente usando funciones integradas JSON_VALUE, JSON_QUERY, and ISJSON. Para consultas y análisis más avanzadas, la función OPENJSON puede transformar una matriz de objetos JSON en un conjunto de filas. Cualquier consulta SQL puede ser ejecutada en el conjunto de resultados devuelto. Finalmente, existe la cláusula de JSON para que le permite dar formato a los resultados de consulta como texto JSON. 
Podemos empezar con ejemplos sencillos. En el siguiente código de Transact-SQL, vamos a definir una variable de texto donde ponemos texto JSON:
DECLARE @json NVARCHAR(4000)
SET @json = 
N'{
    "info":{  
      "type":1,
      "address":{  
        "town":"Bristol",
        "county":"Avon",
        "country":"England"
      },
      "tags":["Sport", "Water polo"]
   },
   "type":"Basic"
}'
Ahora, podemos extraer valores y objetos de texto JSON usando las funciones JSON_VALUE y JSON_QUERY:
SELECT
  JSON_VALUE(@json, '$.type') as type,
  JSON_VALUE(@json, '$.info.address.town') as town,
  JSON_QUERY(@json, '$.info.tags') as tags
Esta consulta devolverá "Basic" y "Bristol" ["Sport", "Water polo"] valores. La función de JSON_VALUE devuelve un valor escalar de texto JSON (cadenas, números, verdadero o falso) que se coloca en un camino JSON especificado como segundo parámetro. JSON_QUERY devuelve un objeto o una matriz (en este ejemplo un conjunto de etiquetas) en el camino JSON. JSON incorporado utilizan JavaScript-como sintaxis para hacer referencia a valores y objetos de texto JSON mediante el segundo parámetro. 
OPEN_JSON la función le permite referencia a alguna matriz en texto JSON y devolver elementos de dicha matriz:
SELECT value
FROM OPENJSON(@json, '$.info.tags')
En este ejemplo, se devuelven los valores de cadena de la matriz de etiquetas. Sin embargo, la función OPEN_JSON puede devolver cualquier objeto complejo. 
Por último, hay una cláusula FOR JSON que puede dar formato a cualquier conjunto de resultados devuelto por la consulta SQL como texto JSON:
SELECT object_id, name
FROM sys.tables
FOR JSON PATH
JSON en SQL Server 2016: Página 2 de 4
JSON en SQL Server 2016: Página 3 de 4
JSON en SQL Server 2016: Página 4 de 4

0 comentarios:

Publicar un comentario