SQL 쿼리를 중지하는 방법안녕하세요, JSL에서 백그라운드로 실행되는 SQL 쿼리를 중지하고 쿼리가 완료되기 전에 사용자가 종료하려는 경우 스크립트를 깔끔하게 닫을 수 있는 방법을 찾고 있습니다.
저는 JMP 18.0.1을 사용하고 있습니다.
감사해요
마테오
데이터 접근Re: SQL 쿼리를 중지하는 방법쿼리 보기/실행 -> 쿼리 선택, 중지를 누르고 최선을 다하기를 바랍니다.

여기에는 취소 명령이 없습니다 https://www.jmp.com/support/help/en/18.0/index.shtml#page/jmp/sql-messages.shtml
https://www.jmp.com/support/help/en/18.0/#page/jmp/sql-functions.shtml 에서

따라서 백그라운드 쿼리가 완료되기 전에 사용자가 JMP를 닫는 상황을 JMP가 처리하는 방법에 대해 JMP 지원팀에 문의할 수 있습니다. 데이터베이스에 대한 취소 메시지 없이 실행 중인 쿼리를 그대로 두고 데이터베이스가 공개 쿼리로 관리되도록 합니까? 그렇지 않기를 바랍니다. JMP 지원팀으로부터 좋은 답변을 받으면 다시 게시해 주세요.
Re: SQL 쿼리를 중지하는 방법이것이 실제로 효과가 있는지는 확실하지 않지만 해당 창을 사용하여 각 쿼리에 대해 확인을 누를 수도 있습니다. 중지를 누르는 것만으로도 충분한지 아니면 모든 쿼리가 중지될 때까지 기다려야 하는지 잘 모르겠습니다.
이것은 테스트되지 않은 예일 뿐입니다.
Names Default To Here(1);
Main Menu("Running Queries");
wait(2);
ws = Get Window List(); // you maybe can trust that last is Running Queries
idx = Contains(ws << get window title, "Running Queries");
mywindow = ws[idx];
gdb = mywindow[GridBox(1)];
// get list of all open queries (not implemented here as I cannot currently test it)
queries = gdb[1] << get;
queryrows = {};
For Each({query, idx}, queries,
If(query != " ",
Insert Into(queryrows)
);
);
gdb << Set Selected Rows({queryrows});
(mywindow << XPath("//ButtonBox[text() = 'Stop']")) << Click(1);
// maybe needs some sort of While loop or Schedule to check if all queries have closed?Re: SQL 쿼리를 중지하는 방법Jarmo님, 감사합니다.
메뉴 명령은 이미 부분적인 솔루션입니다!
스크립팅을 위해 JMP 지원팀에 연락하여 알려드리겠습니다.
마테오
Re: SQL 쿼리를 중지하는 방법한번 시도해 보겠습니다.
감사해요
마테오
Re: SQL 쿼리를 중지하는 방법JMP 지원팀으로부터 받은 피드백입니다.
보기 > 쿼리 실행 > 중지처럼 SQL 문을 중지하는 알려진 JSL 방법은 없습니다. 데이터베이스 연결 닫기()는 이러한 방식으로 작동하는 것처럼 보일 수 있는 유일한 JSL 메소드입니다. 그러나 연결만 닫습니다. SQL은 중지되지 않습니다.
....
JMP를 닫으면 모든 데이터베이스 연결이 종료됩니다. JMP를 닫을 때 데이터베이스에서 쿼리가 실행 중인 경우 JMP를 닫아도 해당 실행이 중단되지는 않습니다. 데이터베이스는 결국 아이돌 연결이나 끊어진 연결을 확인하고 SQL 실행을 자체 종료합니다.