MQL5의 SQLite: 새로운 기능 및 성능 테스트 - 페이지 4

 
Pavel Kolchin :

사람들은 터미널 간에 데이터를 교환해야 합니다. 파일에 비유하여 하나는 편집용으로 연결하고 다른 하나는 읽기용으로만 연결할 수 있게 하면 어떻게 될까요? 그리고 이 모든 것은 초고속 메모리를 통해

mql4에 될까요?

Memlib.mqh를 사용합니다.

 
Dmitiry Ananiev :

Memlib.mqh를 사용합니다.

그것이 무엇인지 찾지 못했다

 
Sergey Dzyublik :

또한 저희가 발견한 다음과 같은 결점에 주의를 기울일 것을 요청합니다.

1) DatabaseExecute 함수에 대한 설명은 사실이 아니지만 DatabasePrepare 에서 복사했습니다.

2) DatabaseRead 함수의 첫 번째 매개변수에 대한 불완전한 설명: int database , // DatabaseOpen에서 받은 데이터베이스 핸들;
DatabasePrepare 는 보다 완전한 정보를 제공하기 때문에 c 는 요청 핸들을 생성하고 DatabaseRead()로 실행할 수 있습니다 .

5) DatabaseColumnName 함수 매개변수 설명의 오타("필드 이름 가져오기"여야 함)

string& name // 테이블 이름 을 얻기 위한 변수 참조

감사합니다. 수정했습니다. 업데이트는 데이터베이스 작업 섹션의 사이트에 있습니다.

Документация по MQL5: Работа с базами данных
Документация по MQL5: Работа с базами данных
  • www.mql5.com
Важной особенностью данного движка является то, что вся база данных находится в единственном стандартном файле, который находится на компьютере пользователя. Простота реализации достигается за счёт того, что перед началом исполнения транзакции записи файл, содержащий базу данных, блокируется. При этом...
 
SQL 쿼리에는 특별한 형식이 있습니다. 순수한 SQL이 아닙니다. 모든 것이 함수 호출 내부에 작성되고 줄 사이에 쉼표가 없습니까? 아니면 문자열 배열을 초기화 할 수 있습니까? 우리는 예가 필요합니다.
 
Rashid Umarov :

감사합니다. 수정했습니다. 업데이트는 데이터베이스 작업 섹션의 사이트에 있습니다.


설명의 DatabaseRead 매개변수가 올바르지 않습니다.

SQL 쿼리에 대한 핸들을 수락해야 합니다.


이미 내장 기능을 위해 가져온 sqlite3 dll로 내 프로젝트를 다시 작성했습니다. 모든 것이 정상입니다.


PS Database.... 기능에서 LastError 재설정 기능을 확인하십시오.

 
Renat Fatkhullin :
우리 앞에는 그러한 과제가 전혀 없습니다.

당신 전에 - 예, 그만한 가치가 없습니다. 개발자는 오랫동안 적절한 스레드로부터 안전한 메시징 메커니즘이 필요했습니다. 직접적으로는 아니지만 추가 스레드로부터 안전한 래퍼를 통해 이를 위한 기반이 좋은 옵션인 것 같습니다.

 
Vasiliy Sokolov :

당신 전에 - 예, 그만한 가치가 없습니다. 개발자는 오랫동안 적절한 스레드로부터 안전한 메시징 메커니즘이 필요했습니다. 직접적으로는 아니지만 추가 스레드로부터 안전한 래퍼를 통해 이를 위한 기반이 좋은 옵션인 것 같습니다.

거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼

서비스. 이미 작업 중이신가요?

레나트 팻쿨린 , 2018.12.17 21:48

교환 메커니즘에 대해 생각해 봅시다. 지금이 적기입니다.

 
Renat Fatkhullin :

대부분의 경우 리소스에 포함되도록 허용하고 프로그램이 처음 실행될 때 이러한 파일이 자동으로 디스크에 추출됩니다.

즉, ex5 내부의 베이스가 부풀어 오르지 않습니다. 파일은 디스크에서만 조작할 수 있습니다.

또한 다른 필요한 기능을 고려하시기 바랍니다.
DATABASE_OPEN_MEMORY로 열린 데이터베이스를 디스크의 파일에 저장하는 DatabaseSaveMemoryToFile 함수가 필요합니다.
즉, 데이터 교환 속도를 위해 메모리를 사용하고, 필요한 경우 디스크의 파일에 데이터를 저장합니다.
Market Watch에서 하듯이 데이터는 Market Watch에 먼저 입력된 후 이력에 저장됩니다.

그리고 역추출 기능, 파일에서 메모리 DatabaseExtractFileToMemory로
이것이 KDB+가 작동하는 방식입니다.
 
ResourceSave 기능 을 사용하여 리소스를 디스크에 저장할 때 색상이 아닌 데이터가 왜곡된다는 것을 아는 사람은 거의 없을 것입니다. 이 기능은 이미지를 저장할 때만 선명하게 합니다.

리소스에 DB를 포함하고 디스크에 저장하는 문제입니다.
 
Реter Konow :
ResourceSave 기능을 사용하여 리소스를 디스크에 저장할 때 색상이 아닌 데이터가 왜곡된다는 것을 아는 사람은 거의 없을 것입니다. 이 기능은 이미지를 저장할 때만 선명하게 합니다.

리소스에 DB를 포함하고 디스크에 저장하는 문제입니다.

리소스 에 데이터베이스 파일을 포함하는 것은 아마도 ex5에서 디스크로 파일의 초기 압축을 풀기 위한 것입니다.
데이터베이스에 대한 추가 작업은 파일에서 직접 발생합니다.