2014-03-07 1 views
0

enter image description herehttp://i.stack.imgur.com/10Ubs.jpg방법 INNO 설정에서 여러 ADOConnection에서를 엽니 다

내가 INNO 코드에서 SQL Server의 데이터베이스에 4 개 별도의 테이블에서 레코드를 얻기 위해 4 SELECT 문을 사용하려면

내가

다음과 같이 네 개의 연결 문자열을 사용하고 있습니다
ADOConnection := CreateOleObject('ADODB.Connection'); 

    ADOConnection.ConnectionString := 
     'Provider=SQLOLEDB;' + 
     'Data Source='+ DBPage.Values[0] + ';' + 

    'Integrated Security=SSPI;'; 

    ADOConnection.Open; 

ADOConnection2 := CreateOleObject('ADODB.Connection'); 

    ADOConnection2.ConnectionString := 
     'Provider=SQLOLEDB;' + 
     'Data Source='+ DBPage.Values[0] + ';' + 

    'Integrated Security=SSPI;'; 

    ADOConnection2.Open; 

위와 같이 4 개의 연결을 열었습니다. 설치를 실행하는 동안 '연결을 여는 데 충분한 공간이 없습니다'라는 오류 메시지가 표시됩니다. 아무에게도 도움이 될 수 있습니까?

+0

코드에서 분명히 동일한 데이터베이스에 연결하고 있습니다. 동일한 데이터 소스'DBPage.Values ​​[0]'을 사용합니다. 그러나 질문에 가능한 오타를 무시하고 오류에 집중합시다. 기본 웹 검색은이 메시지를 가져올 수있는 여러 가지 이유를 반환하지만 대부분은 단일 연결과 가져온 레코드 세트의 문제점에 중점을 둡니다. 스크립트에서이 오류가 정확히 발생합니까? 실제로 원하는 것보다 많은 행을 반환하거나 실행중인 쿼리가 원하는 것이 아닙니다. Btw. 우리가 계속하기 전에 * 당신의 오래된 질문에 대한 대답을 받아들이는 것에 대해 생각해보십시오. 쿼리에서 – TLama

+0

나는 count (*)를 사용하여 숫자 레코드를 가져오고 모든 쿼리는 항상 하나의 행을 가져옵니다. – Axs

+0

문제의 범위를 좁히십시오. 나는 이것이 ADO 연결 인스턴스 카운트 문제 (물론 각각 다른 데이터베이스에 연결) 일 것이라고 생각하고 싶지 않습니다. – TLama

답변

1

유니 코드 버전의 이노 (Inno)로 전환했을 때 오류가 발생하기 시작했습니다. ANSI 버전으로 다시 전환하여 이후 오류를 보지 못했습니다.

+0

나는 inno의 유니 코드 버전을 사용하고있는 것과 같은 문제에 직면하고 있다고 생각한다. – Axs

+0

오랫동안 ADO와 함께 유니 코드 Inno Setup을 사용 해왔고 이와 같은 오류를 발견하지 못했다. 이 게시물은 야생의 추측을 "해결책"으로 잘못 이해 한 것일뿐입니다. @ Manas, 너가 좁아서 무엇이 잘못되었는지 설명 할 수 없다면 어떻게 도와 줄 수 있니? ADO에는 몇 가지 문제가 있으며 운영 체제, ADO 버전 및 단일 연결로 재현 할 수 있는지 여부를 말할 수조차 없었습니다. 내 도움이 끝났어. 행운을 빕니다! – TLama

관련 문제