기고글 토론 "MQL5(MQL4)에서 MySQL 데이터베이스에 액세스하는 방법" - 페이지 3 12345678910...30 새 코멘트 Matvey Alekseev 2015.01.04 04:18 #21 기사 주셔서 감사합니다! 얼마나 많은 솔루션이 모든 곳에서 똑같은 것을 시도하지 않았는지, 귀찮게하지 않으면 로그를 보시면 아무것도 이해할 수 없습니다....MySQL 서버:서버 : TCP / IP를 통한 로컬 호스트서버 버전: 5.6.10프로토콜 버전: 10사용자: root@localhostMySQL 인코딩: UTF-8 유니코드(utf8 ) InnoDB 데이터베이스, UTF8-General-CiMT5 빌드 1035OS: Win8.1 x64 파일: log_.txt 19 kb Discussion of article "How MetaTrader 4 클라이언트 터미널 Intel Xeon Phi 7250의 Eugeniy Lugovoy 2015.01.05 07:33 #22 안녕하세요.x64 운영 체제를 사용 중인데 64비트 버전용 DLL을 사용하고 계신가요?토론 게시물 중 하나에 첨부되어 있습니다(mqlmysql_for_mql5_x64.zip1264 kb).이 문서에는 x86 운영 체제 전용 라이브러리가 있었습니다.그런데 아카이브의 테스트 예제가 작동하나요?<<조금 후에>>.이 줄은 혼란스럽습니다: 테스터 파일 추가됨: libraries\MQLMySQL.dll. 89626바이트 로드됨 x64 파일 MQLMySQL.dll의 원래 크기는 89626이 아니라 89600바이트입니다.어떤 안티바이러스가 있나요? Ingvar Engelbrecht 2015.01.09 23:00 #23 안녕하세요.컨셉이 마음에 듭니다. 큰 도움이 될 것입니다.그러나 나는 몇 가지 문제에 부딪쳤다. 64 비트를 사용하고 있으며 어떻게 작동하는지 확인하기 위해 테스트 스크립트를 다운로드하고 시작했습니다.그러나 MySQLGetFieldAsxxxxx에서 충돌합니다.2015.01.09 21:32:09.535 testsql(AUDNZD,H1) 000000013F81347A 488BF2 mov rsi, rdx 2015.01.09 21:32:09.535 testsql (AUDNZD,H1) 000000013F813476 4883EC20 sub rsp, 0x20 2015.01.09 21:32:09.535 testsql (AUDNZD,H1) 000000013F813475 57 PUSH RDI 2015.01.09 21:32:09.535 testsql (AUDNZD,H1) 000000013F813470 4889742418 MOV [RSP+0X18], RSI 2015.01.09 21:32:09.535 testsql (AUDNZD,H1) 0x000000013F8134B3에서 0x0000000000000001로 읽은 액세스 위반 2015.01.09 21:32:09.535 testsql (AUDNZD,H1) +++++++++++++0 2015.01.09 21:32:09.535 testsql (AUDNZD,H1) 2 행 선택됨 2015..01.09 21:32:09.425 testsql (AUDNZD,H1) Connected 2015.01.09 21:31:18.135 testsql (AUDNZD,H1) x 0 ySorce:#include <FXCM\PairsInfo.mqh> #include <FXCM\MQLMySQL.mqh> //--- 입력 매개변수 input string MySQLURL="yyyyyyyyyyyyyy"; input string MySQLDB = "forex"; input string MySQLParms = "tradeparms"; input string MySQLUser="Ingvar"; input string MySQLPW="xxxxxxxxxxxx"; input int MySQLPort=3306; input string GroupID= "Groupxxx"; PairsInfo prms; //+------------------------------------------------------------------+ //| 스크립트 프로그램 시작 함수| //+------------------------------------------------------------------+ void OnStart() { //--- string SQLString = ""; string Q; string C = ","; StringSetCharacter(Q,0,34); string query; int Cursor; int DB; int rows; DB = MySqlConnect(MySQLURL, MySQLUser, MySQLPW, MySQLDB, MySQLPort, "0", 0); if (DB == -1) { Print ("Connection failed! Error: "+MySqlErrorDescription); return; } Print ("Connected"); // 쿼리 = "tradeparms에서 * 선택"; // 쿼리 = "Select * FROM tradeparms WHERE TradeType = 2"; query = "SELECT Pair, TradeType, SetupID FROM tradeparms WHERE TradeType = 2 AND Pair = 'USDJPY'"; Cursor = MySqlCursorOpen(DB,query); if(Cursor < 0) { Print("Cursor error"); return; } string pair= "x"; int tradetype = 0; string setupid = "y"; rows = MySqlCursorRows(Cursor); Print (rows, " row(s) selected."); for(int i=0;i<rows;i++) { if (MySqlCursorFetchRow(Cursor)) { Print("+++++++++++++" + i); pair = MySqlGetFieldAsString(커서, 0); << crashes here. // tradetype = MySqlGetFieldAsInt(Cursor,1); // setupid = MySqlGetFieldAsString(Cursor,2); } } Print(pair + " " + DoubleToString(tradetype,0) + " " + setupid); MySqlCursorClose(Cursor); } Discussion of article "How FX 스나이퍼의 에르고딕 CCI 조언자 Ingvar Engelbrecht 2015.01.10 16:17 #24 Win32가 설치된 오래된 노트북을 꺼내 32 비트 버전을 설치하고 32 비트 라이브러리와 포함 된 동일한 소스를 컴파일했습니다.잘 작동합니다. 64비트 버전에 문제가 있습니다. Eugeniy Lugovoy 2015.01.10 17:01 #25 ingvar_e:Win32가 설치된 오래된 노트북을 꺼내 32 비트 버전을 설치하고 32 비트 라이브러리와 포함 된 동일한 소스를 컴파일했습니다.잘 작동합니다. 64 비트 버전에 문제가 있습니다.좋아, 이것을 확인하겠습니다.터미널 버전은 무엇입니까? MT4/MT5? 그리고 빌드 번호는? Ingvar Engelbrecht 2015.01.10 19:35 #26 elugovoy:네, 확인하겠습니다.터미널 버전은 무엇인가요? MT4/MT5? 그리고 빌드 번호는요?터미널 MT5 빌드 1035. W7 64에서 실행 중 크래시 발생터미널 MT5 빌드 1035 XP 32에서 실행 중입니다.고마워요. 현재 입력 파일을 사용하는 멀티 커런시, 뮬리 방식 (일종의) EA에서 작업 중입니다. 다른 입력 파일을 유연하게 테스트하기 위해 MySQL로 변환하고 있습니다. Eugeniy Lugovoy 2015.01.12 01:17 #27 ingvar_e:터미널 MT5 빌드 1035. W7 64에서 실행 중 크래시 발생XP 32에서 실행 중인 터미널 MT5 빌드 1035 OK고마워요. 현재 입력 파일을 사용하는 멀티 커런트, 뮬리 방식 (일종의) EA에서 작업 중입니다. 다른 입력 파일을 유연하게 테스트하기 위해 MySQL로 변환하고 있습니다.x64 OS, MT5 빌드 1035에서 테스트했습니다. 정답입니다.몇 가지 확인을 해본 결과 DLL로 들어오는 데이터는 정상적으로 작동합니다. 문제는 DLL 함수에서 문자열 데이터 유형을 수신하는 데 있습니다.또한 이전 빌드인 MT5 x64로 컴파일한 내 스크립트를 테스트했는데 정상적으로 작동했습니다.그러나 빌드 1035로 다시 컴파일 한 후 동일한 DLL을 사용하는 동일한 스크립트가 이러한 오류를 가져옵니다.마지막으로 DLL이나 MQLMySQL 프로젝트에 문제가있는 것이 아니라 MT5 x64 컴파일러에 문제가 있다고 가정합니다. 이 문제에 대해 서비스 데스크에 케이스를 열었습니다.감사합니다,Eugene Eugeniy Lugovoy 2015.01.12 01:34 #28 ingvar_e:터미널 MT5 빌드 1035. W7 64에서 실행 중 크래시 발생XP 32에서 실행 중인 터미널 MT5 빌드 1035 OK고마워요. 현재 입력 파일을 사용하는 멀티 커런트, 뮬리 방식 (일종의) EA에서 작업 중입니다. 다른 입력 파일을 유연하게 테스트하기 위해 MySQL로 변환하고 있습니다.테스트용으로 배포 패키지에 포함된 제 스크립트를 사용할 수 있습니다.INI 파일에서 데이터베이스 자격 증명을 변경한 다음 스크립트를 실행하세요.다시 컴파일하고 다시 실행해 보세요.첫 번째 실행에서는 정상적으로 작동하지만 다시 컴파일 한 후에는 동일한 오류가 발생하는 것을 볼 수 있습니다.MT5 x64 b1035 터미널/컴파일러에 문제가 있습니다. Ingvar Engelbrecht 2015.01.12 11:45 #29 elugovoy:테스트용으로 배포 패키지에 포함된 스크립트를 사용할 수 있습니다.INI 파일에서 데이터베이스 자격 증명을 변경한 다음 스크립트를 실행합니다.다시 컴파일하고 다시 실행해 보세요.첫 번째 실행에서는 정상적으로 작동하지만 다시 컴파일 한 후에는 동일한 오류가 발생하는 것을 볼 수 있습니다.MT5 x64 b1035 터미널/컴파일러에 문제가 있습니다.>문제는 MT5 x64 b1035에 있습니다.그래서 우리는 갇혀 있습니까?제 오래된 32비트 노트북이 오늘 포기했습니다. 완전히 죽었습니다.64비트 머신에 32비트 윈도우를 설치할 수 있는지, 그리고 그게 정말 도움이 되는지 궁금합니다. 또는 Windows 7 64비트 컴퓨터에 MT5/MQL5 32비트를 설치하세요.나중에:이걸 찾았습니다.64비트 운영체제에 32비트 버전을 설치하려면 /32 키를 사용하여 설치 프로그램을 시작해야 합니다. 예: c:\>mt5setup.exe /32.http://www.metatrader5.com/en/terminal/help/startworking/installation Ingvar Engelbrecht 2015.01.12 17:18 #30 ingvar_e:>MT5 x64 b1035에 문제가 있습니다.그래서 우리는 갇혀 있습니까?제 오래된 32비트 노트북이 오늘 포기했습니다. 완전히 죽었습니다.64비트 머신에 32비트 윈도우를 설치할 수 있는지, 정말 도움이 되는지 궁금합니다. 또는 Windows 7 64비트 컴퓨터에 MT5/MQL5 32비트를 설치하세요.나중에:이걸 찾았습니다.64비트 운영체제에 32비트 버전을 설치하려면 /32 키를 사용하여 설치 프로그램을 시작해야 합니다. 예: c:\>mt5setup.exe /32.,SYMBOL_TRADE_TICK_VALUE) 는 0을 반환합니다;윈도우 64비트 머신에서 32비트 MT5를 실행하는 것은 좋은 생각이 아닐 수도 있습니다. 다른 오작동 징후도 있습니다. 다음에는 64비트 컴퓨터에 32비트를 설치해 보겠습니다.항상 이런 긴 우회로 때문에 메인 코스에서 멀리 떨어져 있습니다 :-(이 도구를 포기하고 MySQL로 기본으로 돌아가야 할 것 같습니다. 새 Windows XP를 설치하는 것이 너무 번거롭고 W7 키가 없습니다. 12345678910...30 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
기사 주셔서 감사합니다! 얼마나 많은 솔루션이 모든 곳에서 똑같은 것을 시도하지 않았는지, 귀찮게하지 않으면 로그를 보시면 아무것도 이해할 수 없습니다....
MySQL 서버:
MT5 빌드 1035
OS: Win8.1 x64
안녕하세요.
x64 운영 체제를 사용 중인데 64비트 버전용 DLL을 사용하고 계신가요?
토론 게시물 중 하나에 첨부되어 있습니다(mqlmysql_for_mql5_x64.zip1264 kb).
이 문서에는 x86 운영 체제 전용 라이브러리가 있었습니다.
그런데 아카이브의 테스트 예제가 작동하나요?
<<조금 후에>>.
이 줄은 혼란스럽습니다: 테스터 파일 추가됨: libraries\MQLMySQL.dll. 89626바이트 로드됨
x64 파일 MQLMySQL.dll의 원래 크기는 89626이 아니라 89600바이트입니다.
어떤 안티바이러스가 있나요?
안녕하세요.
컨셉이 마음에 듭니다. 큰 도움이 될 것입니다.
그러나 나는 몇 가지 문제에 부딪쳤다. 64 비트를 사용하고 있으며 어떻게 작동하는지 확인하기 위해 테스트 스크립트를 다운로드하고 시작했습니다.
그러나 MySQLGetFieldAsxxxxx에서 충돌합니다.
2015.01.09 21:32:09.535 testsql(AUDNZD,H1) 000000013F81347A 488BF2 mov rsi, rdx
2015.01.09 21:32:09.535 testsql (AUDNZD,H1) 000000013F813476 4883EC20 sub rsp, 0x20
2015.01.09 21:32:09.535 testsql (AUDNZD,H1) 000000013F813475 57 PUSH RDI
2015.01.09 21:32:09.535 testsql (AUDNZD,H1) 000000013F813470 4889742418 MOV [RSP+0X18], RSI
2015.01.09 21:32:09.535 testsql (AUDNZD,H1) 0x000000013F8134B3에서 0x0000000000000001로 읽은 액세스 위반
2015.01.09 21:32:09.535 testsql (AUDNZD,H1) +++++++++++++0
2015.01.09 21:32:09.535 testsql (AUDNZD,H1) 2 행 선택됨
2015..01.09 21:32:09.425 testsql (AUDNZD,H1) Connected
2015.01.09 21:31:18.135 testsql (AUDNZD,H1) x 0 y
Sorce:
Win32가 설치된 오래된 노트북을 꺼내 32 비트 버전을 설치하고 32 비트 라이브러리와 포함 된 동일한 소스를 컴파일했습니다.
잘 작동합니다. 64비트 버전에 문제가 있습니다.
Win32가 설치된 오래된 노트북을 꺼내 32 비트 버전을 설치하고 32 비트 라이브러리와 포함 된 동일한 소스를 컴파일했습니다.
잘 작동합니다. 64 비트 버전에 문제가 있습니다.
좋아, 이것을 확인하겠습니다.
터미널 버전은 무엇입니까? MT4/MT5? 그리고 빌드 번호는?
네, 확인하겠습니다.
터미널 버전은 무엇인가요? MT4/MT5? 그리고 빌드 번호는요?
터미널 MT5 빌드 1035. W7 64에서 실행 중 크래시 발생
터미널 MT5 빌드 1035 XP 32에서 실행 중입니다.
고마워요. 현재 입력 파일을 사용하는 멀티 커런시, 뮬리 방식 (일종의) EA에서 작업 중입니다. 다른 입력 파일을 유연하게 테스트하기 위해 MySQL로 변환하고 있습니다.
터미널 MT5 빌드 1035. W7 64에서 실행 중 크래시 발생
XP 32에서 실행 중인 터미널 MT5 빌드 1035 OK
고마워요. 현재 입력 파일을 사용하는 멀티 커런트, 뮬리 방식 (일종의) EA에서 작업 중입니다. 다른 입력 파일을 유연하게 테스트하기 위해 MySQL로 변환하고 있습니다.
x64 OS, MT5 빌드 1035에서 테스트했습니다. 정답입니다.
몇 가지 확인을 해본 결과 DLL로 들어오는 데이터는 정상적으로 작동합니다. 문제는 DLL 함수에서 문자열 데이터 유형을 수신하는 데 있습니다.
또한 이전 빌드인 MT5 x64로 컴파일한 내 스크립트를 테스트했는데 정상적으로 작동했습니다.
그러나 빌드 1035로 다시 컴파일 한 후 동일한 DLL을 사용하는 동일한 스크립트가 이러한 오류를 가져옵니다.
마지막으로 DLL이나 MQLMySQL 프로젝트에 문제가있는 것이 아니라 MT5 x64 컴파일러에 문제가 있다고 가정합니다. 이 문제에 대해 서비스 데스크에 케이스를 열었습니다.
감사합니다,
Eugene
터미널 MT5 빌드 1035. W7 64에서 실행 중 크래시 발생
XP 32에서 실행 중인 터미널 MT5 빌드 1035 OK
고마워요. 현재 입력 파일을 사용하는 멀티 커런트, 뮬리 방식 (일종의) EA에서 작업 중입니다. 다른 입력 파일을 유연하게 테스트하기 위해 MySQL로 변환하고 있습니다.
테스트용으로 배포 패키지에 포함된 제 스크립트를 사용할 수 있습니다.
INI 파일에서 데이터베이스 자격 증명을 변경한 다음 스크립트를 실행하세요.
다시 컴파일하고 다시 실행해 보세요.
첫 번째 실행에서는 정상적으로 작동하지만 다시 컴파일 한 후에는 동일한 오류가 발생하는 것을 볼 수 있습니다.
MT5 x64 b1035 터미널/컴파일러에 문제가 있습니다.
테스트용으로 배포 패키지에 포함된 스크립트를 사용할 수 있습니다.
INI 파일에서 데이터베이스 자격 증명을 변경한 다음 스크립트를 실행합니다.
다시 컴파일하고 다시 실행해 보세요.
첫 번째 실행에서는 정상적으로 작동하지만 다시 컴파일 한 후에는 동일한 오류가 발생하는 것을 볼 수 있습니다.
MT5 x64 b1035 터미널/컴파일러에 문제가 있습니다.
>문제는 MT5 x64 b1035에 있습니다.
그래서 우리는 갇혀 있습니까?
제 오래된 32비트 노트북이 오늘 포기했습니다. 완전히 죽었습니다.
64비트 머신에 32비트 윈도우를 설치할 수 있는지, 그리고 그게 정말 도움이 되는지 궁금합니다. 또는 Windows 7 64비트 컴퓨터에 MT5/MQL5 32비트를 설치하세요.
나중에:
이걸 찾았습니다.
>MT5 x64 b1035에 문제가 있습니다.
그래서 우리는 갇혀 있습니까?
제 오래된 32비트 노트북이 오늘 포기했습니다. 완전히 죽었습니다.
64비트 머신에 32비트 윈도우를 설치할 수 있는지, 정말 도움이 되는지 궁금합니다. 또는 Windows 7 64비트 컴퓨터에 MT5/MQL5 32비트를 설치하세요.
나중에:
이걸 찾았습니다.
는 0을 반환합니다;
윈도우 64비트 머신에서 32비트 MT5를 실행하는 것은 좋은 생각이 아닐 수도 있습니다. 다른 오작동 징후도 있습니다. 다음에는 64비트 컴퓨터에 32비트를 설치해 보겠습니다.
항상 이런 긴 우회로 때문에 메인 코스에서 멀리 떨어져 있습니다 :-(
이 도구를 포기하고 MySQL로 기본으로 돌아가야 할 것 같습니다. 새 Windows XP를 설치하는 것이 너무 번거롭고 W7 키가 없습니다.