Re: SQL: no se pueden insertar varios comandos en una declaración preparadaEstimado Ron, No hice esto hasta ahora, pero aquí estás pidiendo una nueva consulta SQL para dos tablas, supongo que no puede manejar eso. ¿Intentaste ejecutar sql en su lugar?
Otra posibilidad sería la unión entre ambas consultas para tener una sola. Pero esto requiere exactamente las mismas columnas en el mismo orden.
Re: SQL: no se pueden insertar varios comandos en una declaración preparadaobtengo el mismo error si lo intento usando el siguiente script:
// connect to database - open data base
DBConnection = Create Database Connection(
"ODBC:DSN=database-project;EPWD=.....;");
sql_events =
"\[
select * from "public"."logs" "t1";
select * from "public"."logs" "t1";
]\"
dt1 = execute sql ( DBConnection, eval insert ( sql_events , "¤") , "Events from logs" );
el problema puede ser similar a esta discusión:
https://community.jmp.com/t5/Discussions/SQL-query-to-ODBC-datasource-SQL-server-with-temporary-tables/td-p/457582
pero la solución allí no es exactamente aplicable al corrimiento al rojo.
Re: SQL: no se pueden insertar varios comandos en una declaración preparadaPor lo general, no puede ejecutar dos instrucciones SQL con una llamada a EXECUTE SQL.Ambas declaraciones son iguales; ¿Quizás solo estabas mostrando un ejemplo?
¿Por qué está tratando de ejecutar dos declaraciones SQL a la vez?EXECUTE SQL devuelve un conjunto de datos para cada instrucción SQL.
¿Por qué no simplemente ejecutar dos comandos EXECUTE SQL?
Re: SQL: no se pueden insertar varios comandos en una declaración preparadatienes razón @pmroz , era solo un ejemplo de dos declaraciones.
a veces necesito dos declaraciones para crear una submuestra (tabla temporal) o definir una función.
en la mayoría de los casos, logro usar la declaración "Con" en lugar de una tabla temporal, pero no siempre. especialmente cuando el uso de declaraciones "Con" requiere subconsultas muy complejas que no están permitidas. .
Re: SQL: no se pueden insertar varios comandos en una declaración preparadaEste enfoque podría ayudar:
Llame a un procedimiento PL/SQL que realiza la consulta supercompleja y crea una tabla temporal.
Luego seleccione * de la tabla temporal.
Aquí hay un código que hace algo así:
event_sql = evalinsert(
"DECLARE
l_proc_name VARCHAR2 (100) := 'Get_Reference_PTs';
l_user_SID NUMBER := SYS_CONTEXT('USERENV', 'SID');
l_user_name VARCHAR2 (30) := UPPER(SYS_CONTEXT('USERENV', 'OS_USER'));
BEGIN
INSERT INTO quality_attrib (SID, OS_USER, Completion_Time, Progress_Text)
VALUES (l_user_SID, l_user_name, SYSTIMESTAMP, 'START Get_Reference_PTs');
COMMIT;
INSERT INTO Ref_PT_List (SID, OS_USER, PT_Name)
(SELECT DISTINCT l_user_SID, l_user_name, mu.pt_name
FROM info ci,
drug cd,
reaction cr,
meddra_uta mu,
WHERE cd.case_id = ci.case_id
AND cr.case_id = ci.case_id
AND cr.reported_meddra_uta_id = mu.meddra_uta_id
AND cd.cdd_generic_id = rd.cdd_generic_id
AND ci.report_type_code_id = 8
AND rd.calendar_id = ^one_calendar_id^
AND cd.drug_character_code_id IN (31, 32)
^pt_clause^
^date_clause^
^event_type_clause^
);
COMMIT;
INSERT INTO quality_attrib (SID, OS_USER, Completion_Time, Progress_Text)
VALUES (l_user_SID, l_user_name, SYSTIMESTAMP, 'END Get_Reference_PTs');
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
log_error_message(SQLCODE, SQLERRM, l_proc_name);
END; ");
Execute SQL(dbc, event_sql);
Execute SQL(dbc, "select * from ref_pt_list");Re: SQL: no se pueden insertar varios comandos en una declaración preparadamuchas gracias @pmroz
dividir las dos declaraciones en declaraciones Ejecutar SQL separadas funciona perfectamente.
SQL: no se pueden insertar varios comandos en una declaración preparadaqueridos miembros del foro,
cuando uso jmp para consultar amazon redshift, necesito enviar dos declaraciones juntas, pero por alguna razón, aparece un error que dice:
desafortunadamente, mi consulta es muy elaborada y no funciona solo con una declaración "Dónde" para cada tabla separada.
si alguien tiene alguna idea de cómo superar este problema, sería útil.
Gracias

Modelado Estadístico AvanzadoInvestigación del Consumidor y del MercadoAcceso a los datosDiseño de experimentosLa personalización en masa