2011-10-28 19 views
0

當兩個odbc_connect調用都是使用相同的憑證做會發生什麼?兩個odbc_connect調用使用相同的憑據

更具體地講我的問題,

  • 會有兩個連接活躍,或都將資源 引用相同的連接?

  • 做第二個連接發生,如果已經有使用相同的憑據連接 ?

    <?php 
        $user  = "root"; 
        $password = "root"; 
        $server = "localhost"; 
        $db  = "dbo"; 
    
        $dsn  = "SERVER=$server; DRIVER=SQL Server; DATABASE=$db"; 
    
        $connection_1 = odbc_connect($dsn, $user, $password); 
        //Do some stuff 
        $connection_2 = odbc_connect($dsn, $user, $password); 
        //Do some stuff 
    ?> 
    

我想問的原因是因爲我有一個封裝了整個連接過程中的一類,並有單獨的PHP文件形式納入,每個都有自己的類的實例,每個製作在實例化時使用相同憑據進行連接嘗試。這意味着,如果我有3個實例,則會有3次具有相同憑據的連接嘗試。

我解決了這個使用靜態屬性的鏈接,並檢查鏈接正在嘗試重新連接之前已經使用過,但我仍然好奇,會發生什麼。

回答

0

我做的這個使用MySQL GUI工具的測試和我想你的概念(ODBC到MySQL)。至少在MySQL的情況下,它確實創建了兩個不同的連接。

0

我用PHP 5.2和ODBC連接到MSSQL,並沒有創造不同的連接。其實 - 當我關閉一個連接打開其他得到封閉了,所以可能他們是不同的,但所有的錯誤封閉起來。

+0

你能告訴我的代碼,所以我可以看到它爲自己? :) – ShadowScripter

相關問題