MQL4, ORACL, MSSQL, MySQL에서 데이터베이스에 액세스하는 방법 - 페이지 6

 

이 모든 것이 작동하고 베이스가 부풀어 오릅니다! :)

행운을 빕니다.

 
TheVilkas писал(а) >>

이 모든 것이 작동하고 베이스가 부풀어 오릅니다! :)

행운을 빕니다.

오프셋!!!

실제 작업 예.

감사해요

 

만세! 내 기반도 일반적으로 libmysql.dll을 통해 얻었습니다. 결과가 반환되는 이유는 상형 문자가 먼저 표시되고 필요한 정보가 다음에 표시되는 이유가 명확하지 않습니다. 위의 코드를 변경했습니다.

쿼리: "SELECT concat(';',concat_ws(';',date,title,impact)) FROM 캘린더 WHERE(ADDDATE( NOW( ), INTERVAL -4 DAY ) AND ADDDATE( NOW( ), INTERVAL +2 사이의 날짜) DAY )) AND (currency='"+symb1+"' XOR currency='"+symb2+"') ORDER BY date"

코드:

 for ( int i = 0 ; i < numOfRows ; i + + ) { 
      row = mysql_fetch_row ( result ) ; 
      //add_news(row); 
   
   int begin = StringFind ( row , DELIM ) + 1 ; 
   int end = StringFind ( row , DELIM , begin ) ;   
      ArrayResize ( News_Array , i + 1 ) ;
      News_Array [ i , 0 ] = StringSubstr ( row , begin , end - begin ) ;  // fills datetime data in compatible format
         begin = end + 1 ; 
         end = StringFind ( row , DELIM , begin ) ; 
      News_Array [ i , 1 ] = StringSubstr ( row , begin , end - begin ) ;   // fills description data
         begin = end + 1 ; 
         end = StringFind ( row , DELIM , begin ) ;       
      News_Array [ i , 2 ] = StringSubstr ( row , begin , end - begin ) ;  // fills rating data
      if ( StringSubstr ( row , begin , end - begin ) = = "High" ) Event_Rating_No = "3" ;
      if ( StringSubstr ( row , begin , end - begin ) = = "Medium" ) Event_Rating_No = "2" ;
      if ( StringSubstr ( row , begin , end - begin ) = = "Low" ) Event_Rating_No = "1" ;   
      
         begin = end + 1 ; 
         end = StringFind ( row , DELIM , begin ) ;      
      
      News_Array [ i , 3 ] = Event_Rating_No ;  // number equivalent for ratings
      News_Array [ i , 4 ] = "0" ;  // used for prevents repetition of alerts
                
        } 


모두에게 행운을 빕니다!

 
GarF1eld >> :

BTRVODKAex

이러한 목적을 위해 중간 dll은 C++\cli에 작성됩니다. mql에서 직접 관리 코드를 호출할 수 없습니다.



C#을 사용하지 않는 이유는 무엇입니까? 그리고 MT4용 C++로 dll을 작성하는 방법에 대한 문헌은 어디에서 찾을 수 있습니까?

 
BTRVODKAex >> :

C#을 사용하지 않는 이유는 무엇입니까? 그리고 MT4용 C++로 dll을 작성하는 방법에 대한 문헌은 어디에서 찾을 수 있습니까?

나는 내 자신의 질문에 대답합니다. "마샬링은 함수 호출을 방해합니다" :)

C++ 배우러 갔다

 

안녕하세요, 여러분, 이미 병렬 스레드에서 질문했지만 아마도 반복 할 것입니다 ...

MySQL은 테이블의 최대 열 수를 제한합니다. 더 정확하게 말하면 가능한 최대 열 수는 1000개입니다. 이 제한을 제거할 수 있는 방법을 아는 사람이 있고 전혀 가능한가요? 그렇지 않다면 어떤 DB에서 3000개 이상의 열이 있는 테이블을 생성 할 수 있습니까?

 
toxa.forex >> :

안녕하세요, 여러분, 이미 병렬 스레드에서 질문했지만 아마도 반복 할 것입니다 ...

MySQL은 테이블의 최대 열 수를 제한합니다. 더 정확하게 말하면 가능한 최대 열 수는 1000개입니다. 이 제한을 제거할 수 있는 방법을 아는 사람이 있고 전혀 가능한가요? 그렇지 않다면 어떤 DB에서 3000개 이상의 열이 있는 테이블을 생성할 수 있습니까?

신탁

 
HIDDEN >> :

신탁

HIDDEN, 답변 감사합니다. 하지만 어떤 Oracle을 의미하는지 좀 더 구체적으로 말씀해 주시겠습니까? Oracle 9i에는 동일한 제한이 있으며 테이블당 최대 1000개의 열이 있습니다...

 
toxa.forex >> :

HIDDEN, 답변 감사합니다. 하지만 어떤 Oracle을 의미하는지 좀 더 구체적으로 말씀해 주시겠습니까? Oracle 9i에는 동일한 제한이 있으며 테이블당 최대 1000개의 열이 있습니다...

그리고 이후 버전.

나는 오라클과 조금 일했다. 일반적으로 3000개의 열이 필요하기 때문에 여기에서 생각하지 못한 아이디어가 내 머리 속에 맴돌고 있습니다. 정보를 테이블로 나누고 쿼리를 최적화합니다. 그러면 기초에서 무엇이든 형성할 수 있습니다.

왜 병 전체를 골무에 붓는지 이해가 되지 않습니다.


목표와 목적을 설명하십시오. 데이터베이스가 전혀 필요하지 않을 수도 있습니다.

 
HIDDEN >> :

그리고 이후 버전.

나는 오라클과 조금 일했습니다. 일반적으로 3000개의 열이 필요하기 때문에 여기에서 생각하지 못한 아이디어가 내 머리 속에 맴돌고 있습니다. 정보를 테이블로 나누고 쿼리를 최적화합니다. 그러면 기초에서 무엇이든 형성할 수 있습니다.

왜 병 전체를 골무에 붓는지 이해가 되지 않습니다.


목표와 목적을 설명하십시오. 데이터베이스가 전혀 필요하지 않을 수도 있습니다.

오라클 이후 버전은 몰랐는데 컬럼 수에 대한 제한은 그대로 유지한 것 같은데...

예, 정보를 테이블로 나누는 것은 확실히 가능하지만 데이터베이스 호출의 증가로 인해 요청 처리 시간이 크게 증가하기 때문에 이것은 가장 바람직하지 않은 솔루션입니다.... .

그리고 우리는 신경망에 대해 이야기하고 있습니다. 여기서 데이터베이스를 사용할 필요는 없지만 제 생각에는 이것이 3000개 이상의 매개변수를 저장하는 데 가장 좋은 옵션입니다...

사유: