¿Podría algún experto verificar mi script jsl?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Intenté escribir una secuencia de comandos jsl simple para extraer datos de una base de datos SQL con una funcionalidad para seleccionar datos de extracción de un marco de tiempo establecido. Sin embargo, después de verificar un par de veces, todavía no puedo encontrar el error. El depurador del script diciendo: [Microsoft] [Controlador ODBC para SQL Server] [SQL Server] Comillas sin cerrar después de la cadena de caracteres ''.
¿Podría alguien ayudarme a ver dónde está mal en mi script?
// Este script está escrito para extraer datos dentro de un determinado período de tiempo
start_time _ = "23/02/2015 12:00:00 AM";
end_time _ = "24/02/2015 12:00:00 PM";
Abrir base de datos ("DSN =; Descripción =; UID =; PWD =; APP = JMP; WSID =; DATABASE =",
"SELECT * FROM dbo.WORKWEEK
DONDE ((dCreated> = '", start_time,"')
AND (dCreated <= '", end_time,"'))
ORDEN POR dCreated ",
"Tabla actualizada"
)
dCreated es la columna de la base de datos que se utiliza para proporcionar información de tiempo. Es un tipo de datos numérico, un tipo de modelado continuo y el formato ya está establecido en m / d / a / h: m: s
Muchas gracias,
Re: ¿Podría algún experto verificar mi script jsl?C Hales es correcto, las dos técnicas son complementarias. Puedes usar evaluar inserte con variables rodeadas por ^ caracteres para lograr el mismo efecto que la concatenación de cadenas. Pero no son lo mismo.
Me gusta usar evalinsert porque le da un aspecto más limpio al código, donde necesita insertar variables en una cadena.
Re: ¿Podría algún experto verificar mi script jsl? Listas y Expresiones es parte de la ayuda en línea para JSL; También hay un conjunto incorporado de ejemplos en Ayuda-> Índice de secuencias de comandos, aunque este ejemplo en particular no es muy detallado. Ayuda-> Libros-> Guía de scripting es el libro pdf en su computadora y tiene un mejor ejemplo.
Yo diría que las dos técnicas son complementarias, y en este caso particular, EvalInsert podría hacer que su JSL sea más fácil de entender. Logran lo mismo, de muy diferentes maneras.
Re: ¿Podría algún experto verificar mi script jsl?Hola PMroz,
Hace el EVALINSERT tiene la misma funcionalidad / significado que "||?
¿Significa ^ igual a "||?
Gracias,
Re: ¿Podría algún experto verificar mi script jsl?Utilizo EVALINSERT para un aspecto más limpio de la declaración de SQL. Para usarlo, encierre todas las variables que desee evaluar en ^ caracteres.
// Este script está escrito para extraer datos dentro de un determinado período de tiempo
hora de inicio_ = "23/02/2015 12:00:00 a.m." ;
hora de finalización_ = "24/02/2015 12:00:00 PM" ;
sql_statement = evaluar inserte (
"SELECT * FROM dbo.WORKWEEK
DONDE dCreated> = '^ start_time_ ^'
Y dCreated <= '^ end_time_ ^'
ORDEN POR dCreated " ) ;
Abrir base de datos (
"DSN =; Descripción =; UID =; PWD =; APP = JMP; WSID =; DATABASE =" ,
sql_statement ,
"Tabla actualizada"
) ;
Re: ¿Podría algún experto verificar mi script jsl?Muchas gracias Craige
Re: ¿Podría algún experto verificar mi script jsl? "SELECT * FROM dbo.WORKWEEK
DONDE ((dCreated> = '"|| start_time_ ||"')
AND (dCreated <= '"|| end_time_ ||"'))
ORDEN POR dCreated "
/ *:
"SELECT * FROM dbo.WORKWEEK
DONDE ((dCreated> = '02/23/2015 12:00:00 AM')
Y (dCreated <= '02/24/2015 12:00:00 PM'))
ORDEN POR dCreated "
utilizar || para la concatenación de cadenas en JSL. Agregué el espacio entre el apóstrofe y la comilla solo para poder verlos mejor, lo más probable es que tenga que eliminarlo.