資料庫連線

2021-08-29 19:53:52 字數 733 閱讀 5619

在常見的客戶/伺服器模式中,簡單連線是很重的操作,消耗資源很多。

首先,客戶端與遠端的監聽程式(listener program)建了聯絡;接著,監聽程式要麼建立乙個程序或者執行緒來執行資料庫核心程式,要麼直接或者間接的把客戶的請求傳遞給已存在的伺服器程序,這取決於此伺服器是否為共享伺服器。

除了這些系統操作(建立程序或執行緒並開始執行)之外,資料庫系統還必須為每

次session建立新環境,以跟蹤它的行為。建立新session前,dbms還要檢查密碼是否與儲存

的加密的賬戶密碼相符。或許,dbms還要執行登入觸發器(logon trigger),還要初始化儲存

過程和程式包(如果它們是第一次被呼叫)。上面這些還不包括客戶端程序和伺服器程序之間要

完成的握手協議。正因為如此,連線池(connection pooling)等保持永久資料庫連線的技術對

效能才如此重要。

第二個原因,你的程式(甚至包括儲存過程)和資料庫之間的互動也有開銷。

即使資料庫鏈結已經建立且仍未中斷,程式和dbms 核心之間的上下文切換(context switch)

也有代價。因此,如果dbms 支援資料通過陣列傳遞,應毫不猶豫地使用它。如果該陣列接

口是隱式的(api內部使用,但你不能使用),那麼明智的做法是檢查它的預設大小並根據具體

需要修改它。當然,任何逐行處理的方式都面臨上下文切換的問題,並對效能產生嚴重影響—

總結:資料庫連線和互動好似萬里長城——長度越長,傳遞訊息越耗時。

資料庫連線

第一,設定允許遠端連線,允許sql server驗證 第二,建立登陸帳戶並授權 第三,註冊sql server資料庫 c windows microsoft.net framework v2.0.50727 下執行 aspnet regsql 指令 data server sqlexpress in...

資料庫連線

php host localhost host name db user root mysql username db password root mysql password db name table database name connect to server and select data...

資料庫連線

1.c 連線連線access 程式 using system.data using system.data.oledb string strconnection provider microsoft.jet.oledb.4.0 strconnection data source c begaspne...