이 위시리스트 요청에 영감을 준 것은 무엇입니까?
추가 기능의 로그 및 디버그 메시지를 나중에 디버깅 목적으로 사용할 수 있는 로컬 데이터베이스에 저장하려고 합니다. JMP에는 내부 SQLite 지원이 있어 ODBC 드라이버를 설치할 필요가 없습니다.
현재 JMP 16, 17 및 18 EA2에서 SQLite에 대한 내부 지원은 읽기(=SELECT) 작업에만 해당되며 내부 SQLIte 작업에는 8년 이상 된 버전 3.8.11.1이 있습니다. 두 제한 사항 모두 JMP 설명서에 설명되어 있지 않거나 다른 곳에서 찾을 수 없습니다.
예를 들어 다음 명령은 JMP에서 SQLite 데이터베이스 파일을 엽니다.
obj = New SQL Query(
Connection("SQLite:Database=<PATH>\data.db"),
Custom SQL("SELECT sqlite_version(), sqlite_source_id() FROM table1")
) << Run Foreground();</PATH>
현재 이 명령은 JMP 16/17/18EA2의 내부적으로 사용되는 SQLite 구현 버전을 반환합니다.
| sqlite_version | sqlite_source_id |
| 3.8.11.1 | 2015-07-29 20:00:57 cf538e2783e468bbc25e7cb2a9ee64d3e0e80b2f |
그러나 다음 INSERT 또는 UPDATE 명령은 "deleted object reference[]" 오류를 발생시킵니다.
obj = New SQL Query(
Connection("SQLite:Database=<PATH>\data.db"),
Custom SQL("INSERT INTO table1 (id, name, data) VALUES (1, \!"test\!", sqlite_version());")
) << Run Foreground();</PATH>
당신이 보고 싶은 개선점은 무엇입니까?
- JMP 추가 기능을 실행하는 동안 수집된 데이터를 저장하기 위해 SQLite 구현이 UPDATE 및 INSERT 문을 실행할 수 있도록 허용합니다.
- 최신 버전의 드라이버를 사용할 수 있도록 내부 SQLite 드라이버를 업데이트합니다. 현재 버전은 3.42.0입니다.
이 아이디어가 중요한 이유는 무엇입니까?
이 아이디어를 사용하면 SQLite 데이터베이스 파일에 디버깅 또는 로깅 목적으로 작은 데이터를 저장할 수 있습니다. 이 형식은 일반 텍스트, JSON 또는 XML 파일을 사용하는 것보다 더 우수하고 유연하며 사용하기 쉽습니다.
@martindemel