Saltar al contenido

¡Transforma tus conexiones en dinero para el final del año con nuestro nuevo Programa de Indicación de Clientes! Descubre más

Esta documentación es para la versión 4 y posteriores de App Builder, el nuevo nombre de Vinyl. Accede a la documentación de Vinyl aquí.

Mvsql en el App Builder Jitterbit

Descripción general

mvSQL es el dialecto de SQL propio de App Builder. Permite a los usuarios aprender y usar un único conjunto de sintaxis y funciones, mientras App Builder traduce esa sintaxis a expresiones apropiadas para el proveedor. mvSQL se puede usar para consultar bases de datos relacionales, almacenamiento, REST, sistemas de archivos o cualquier otro tipo de proveedor de datos compatible con App Builder.

Versiones de mvSQL

Las versiones de mvSQL compatibles con App Builder se enumeran y la versión compatible más antigua aparece primero (Versión 1).

Versión 1

La versión 1 de mvSQL, la versión heredada más antigua compatible con App Builder, es incluso más estricta de lo que permitíamos antes de refactorizar la gramática y el analizador. La mayoría de las aplicaciones heredadas de App Builder deberían ejecutarse con esta versión.

Versión 2

La versión 2 de mvSQL mejora la sintaxis de paso a través, permite cerrarla y reanudar expresiones mvSQL regulares, y admite caracteres de escape.

Ejemplo

La versión 1 vería esto (en MS SQL Server) ${ [vendor syntax] } || 'my example' como ${ [vendor syntax] || 'my example' } representación [vendor syntax] || 'my example'.

La versión 2 analizaría como estaba previsto y se representaría como [vendor syntax] + 'my example'Tenga en cuenta que la concat corresponde al proveedor.

Versión 3

La versión 3 de mvSQL requiere que los prefijos de tabla sean correctos. Hasta esta versión, si el prefijo de tabla era incorrecto y App Builder podía inferirlo comprobando las demás columnas, permitíamos prefijos de tabla incorrectos.

Ejemplo

En versiones anteriores de mvSQL, usar un alias de tabla inexistente, o incluso uno que sí exista pero que no contenga la columna referenciada, funcionaba siempre que el nombre de la columna solo apareciera en una de las fuentes. Este escenario presenta un problema cuando el mismo nombre de columna se agrega a otra fuente y la regla de negocio deja de funcionar.

Versión 4

En la versión 4 de mvSQL, las funciones de tiempo de ejecución generan un tipo adecuado, en lugar de ser siempre una cadena, y los valores nulos no se fusionan en una cadena vacía.

Ejemplo

Shared(ColumnName, numeric)

  • Antes de la versión 4, App Builder generaba '0' si no se proporcionó la columna, o '1' si lo fuera (tenga en cuenta que se representa como una cadena, asumiendo que el valor compartido aquí es 1 por supuesto)
  • A partir de la versión 4, App Builder ahora genera resultados null Si no se proporcionó, y 1(sin las comillas), también parametrizamos si el proveedor lo admite (@p0), ya que esto puede mejorar el rendimiento del proveedor.
  • Esto también facilita la fusión del valor. Antes, si querías cambiar el valor si no se proporcionaba, necesitabas algo como IIF(Shared(ColumnName) = '', -1, Shared(ColumnName, numeric)), ahora puedes usar ISNULL(Shared(ColumnName, numeric), -1) Las nuevas reglas se crean con la versión más reciente disponible (versión 4), pero para evitar infringir las reglas antiguas, las mantuvimos intactas. Si se realizan cambios en una regla que no se verá afectada (principalmente reglas sin funciones de tiempo de ejecución), App Builder actualizará automáticamente la versión de mvSQL.

Versión 5

En la versión 5, mvSQL trata cualquier paso a través como susceptible de GRUPO cuando es parte de una consultar agregada.

Para indicar que una expresión es un agregado, llámela con el Expression() función.

Ejemplo

Expression(${Count(1)})

Recursos