2014-03-07 34 views
0

enter image description herehttp://i.stack.imgur.com/10Ubs.jpg如何在Inno Setup的打開多個的ADOConnection

我想用4個select語句來獲得在SQL Server中INNO代碼數據庫由4個獨立的表中的記錄,我用四個連接字符串如下

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]'。但是,讓我們忽略您的問題中可能的拼寫錯誤,讓我們關注錯誤。基本的網絡搜索返回了許多可能的原因來獲取此消息,但其中許多重點關注單個連接和獲取記錄集的問題。當你的腳本中發生這種錯誤?我想你正在返回比你想要的更多的行,或者只是你正在運行的查詢不是你想要的。順便說一句。在繼續之前,*考慮接受你的舊問題的答案*。 – TLama

+0

在查詢中,我正在使用count(*)來獲取數字的記錄數,並且所有查詢總是獲取一行 – Axs

+0

嘗試縮小問題範圍。我不想相信這會是一個ADO連接實例計數問題(當然每個連接到不同的數據庫)。 – TLama

回答

1

當我切換到Unicode版本的Inno時,我開始出現該錯誤。我轉回到ANSI版本,並沒有看到這個錯誤。

+0

我認爲我面臨同樣的問題,因爲我使用unicode版本的inno – Axs

+0

我一直在使用Unicode Inno Setup與ADO很長一段時間,從來沒有注意到這樣的錯誤。這篇文章無非是一個觀察,認爲一個瘋狂的猜測出現了問題,就像一個「解決方案」。 @馬納斯,如果你甚至無法縮小和描述出了什麼問題,人們怎麼可以幫忙? ADO有幾個問題,你甚至無法說你的操作系統,ADO版本,如果你能用單一連接重現它。我的幫助已經結束了。祝你好運! – TLama