監(jiān)視SQLServer上的連接情況

字號:

在SQL Enterprise manager中的[Server /Current Activity]可以讓您一目了然地看出SQL的連接情況,是個(gè)非常好用的工具。 在Current Activity中,可見到已登入的用戶清單、數(shù)據(jù)庫名稱、工作站名稱與應(yīng)用程序名稱。下方的狀態(tài)欄顯示目前有多少連接關(guān)系正在運(yùn)作,多少連接關(guān)系處于空閑。
    存取時(shí)限
    一般連接關(guān)系的存取時(shí)限從15秒到1、2分鐘不等,至于精確的數(shù)值要視你所選擇的程序界面與時(shí)限的設(shè)定值而定。亦即假如你要存取數(shù)據(jù)庫時(shí),選擇了不正確的服務(wù)器或服務(wù)器已經(jīng)關(guān)機(jī),則CLIENT端便會(huì)沒有任何反應(yīng),一直到存取時(shí),才會(huì)返回連接失敗信息。
    若要連接LAN網(wǎng)中的SQL SERVER不須耗費(fèi)多少時(shí)間,約1至5秒內(nèi)便能獲得回應(yīng),應(yīng)用程序第一次連接會(huì)花費(fèi)較長的時(shí)間,第二次后會(huì)比較短。因?yàn)閃indows系統(tǒng)會(huì)將先前的連接關(guān)系所用的控件或DLL文件一直保留在內(nèi)存。
    設(shè)定遠(yuǎn)程數(shù)據(jù)的存取方式
    您可以自己設(shè)定取數(shù)據(jù)的處理方式,在VFP的TOOLS菜單里,選中Options... 菜單項(xiàng),彈出OPTIONS對話框,選中Remote Data 標(biāo)簽:
    1: 共享連接 指定 Visual FoxPro 使用當(dāng)前連接處理新的視圖。在數(shù)據(jù)源一次只支持一個(gè)連 接時(shí),它很有用。它可以使一個(gè)連接處理多個(gè)視圖。
    2:取備注字段 指定只有在視圖輸出中激活一個(gè)備注或通用字段后才從數(shù)據(jù)源取備注或通用字段。 清除該選項(xiàng)可以減少初始從遠(yuǎn)程表中下載的數(shù)據(jù)量,這將提高性能。
    3:SQL 更新條件 指定當(dāng)您試圖更新數(shù)據(jù)前的數(shù)據(jù)對比方式,Visual FoxPro 檢查遠(yuǎn)程服務(wù)器上 的字段來決定是否改變數(shù)據(jù)。如果選擇條件所指定遠(yuǎn)程字段中的數(shù)據(jù)已經(jīng)更改,則更新失敗。
    (1):Key Fieds Only 只對比主鍵
    (2):Key and Updateble Fieds 對比主鍵和要更新的字段
    (3):Key and Modified Fieds 對比主鍵和修改過的字段(默認(rèn))
    (4):Key and Timestamp 對比主鍵和數(shù)據(jù)庫的時(shí)間截。
    4:SQL 更新 指定 Visual FoxPro 是使用 SQL UPDATE 還是使用 SQL DELETE,然后用 INSERT 來更新遠(yuǎn)程服務(wù)器上的信息。
    (1):SQL Update 直接用SQL語言更新(默認(rèn))
    (2):SQL Delete + SQL Insert 刪除舊記錄,然后增加一條新記錄
    5:每次取的記錄數(shù) 當(dāng)用批處理方式時(shí),指定 Visual FoxPro 從遠(yuǎn)程數(shù)據(jù)源中一次返回多少條記錄。選定“全部”可以指定在第一次取操作中即返回所有的記錄。該設(shè)置受“要取的記錄數(shù)”中 指定值的限制。 6:要取的記錄數(shù) 指定一個(gè)視圖返回的記錄總數(shù)。如果您錯(cuò)誤地建立了一個(gè)查詢,它可以防止返回過多的數(shù)據(jù)。選擇“全部”可以指定返回所有的記錄。
    7:使用備注字段的長度 >= 指定長字符型字段中數(shù)據(jù)的長度。指定在視圖輸出中,如果字符數(shù)據(jù)超出指定長度時(shí),將長字符字段轉(zhuǎn)換成備注字段。默認(rèn)值是255, 等于 Visual FoxPro 中字符型字段的長度。
    8:成批更新的記錄數(shù) 指定視圖一次發(fā)送的更新語句數(shù)目。調(diào)整這個(gè)值可以明顯地提高更新性能。默認(rèn)值是 1。有關(guān)的詳細(xì)內(nèi)容,請參閱“REPLACE 命令”以及“Scope 子句”。
    9:異步執(zhí)行 指定把控制權(quán)返回給您的應(yīng)用程序之后,Visual FoxPro 在后臺執(zhí)行 SQL pass-through 命令(使用 SQLEXEC( )、SQLMORERESULTS( )、SQLTABLES( ) 和 SQLCOLUMNS( ))。
    如果您選定了該選項(xiàng),您的應(yīng)用程序可以顯示過程信息,并且允許用戶使用 ESC 鍵中斷一個(gè)命令(如果 SET ESCAPE 已經(jīng)設(shè)置為“真”)。您可以決定一個(gè)異步執(zhí)行的 SQL 命令的狀態(tài),方法是重復(fù)地調(diào)用其中一個(gè) SQL pass-through 函數(shù),直至它報(bào)告命令已經(jīng)完成為止。這個(gè)選項(xiàng)的默認(rèn)值是廢止(同步執(zhí)行),它指定 Visual FoxPro 在把控制權(quán)返回您的應(yīng)用程序之前一直等待,直至 pass-through SQL 命令完成為止。
    10:顯示警告信息 允許顯示警告信息。
    11:批處理 在使用 SQLEXEC( ) 發(fā)送多個(gè) SQL pass-through 語句時(shí),指定 Visual FoxPro 并不返回任何結(jié)果,直到所有結(jié)果集合都檢索到為止。
    對應(yīng)于在 SQLSETPROP( ) 函數(shù)中設(shè)置 BatchMode。如果廢止了該選項(xiàng),您必須調(diào)用 SQLMORERESULTS( ) 來確定數(shù)據(jù)是否可用。
    12:自動(dòng)事務(wù)處理 指定由遠(yuǎn)程表上的連接自動(dòng)處理事務(wù)。如果清除了該選項(xiàng),您必須使用 SQLCOMMIT( ) 和 SQLROLLBACK( ) 人工處理事務(wù)過程。
    13:顯示登錄信息 當(dāng)一個(gè)連接激活時(shí),指定是否顯示登錄提示(如果該連接需要用戶進(jìn)行登錄)。例如,“只在必要時(shí)”指出,只有在連接或視圖定義中未指定登錄信息的情況下,才出現(xiàn)登錄提示。
    14:連接超時(shí)設(shè)定(秒) 指定與遠(yuǎn)程服務(wù)器建立一個(gè)連接所需等待的秒數(shù)(0 到 600 之間)。如果在指定時(shí)間內(nèi)不能建立這個(gè)連接,則 Visual FoxPro 顯示錯(cuò)誤。指定 0 為無限制地等待一個(gè)連接。
    15:空閑超時(shí)設(shè)定(分鐘) 指定連接不活動(dòng)前允許空閑時(shí)間的分鐘數(shù)。如果在指定時(shí)間內(nèi)沒有請求使用服務(wù)器,則 Visual FoxPro 終止該連接。但是,連接超時(shí)后如果對服務(wù)器又有請求,則 Visual FoxPro 將試圖自動(dòng)恢復(fù)這個(gè)連接。
    16:查詢超時(shí)設(shè)定(秒) 指定等待服務(wù)器響應(yīng)一個(gè)請求的秒數(shù)(0 與 600 之間)。如果服務(wù)器在指定秒數(shù)的時(shí)間內(nèi)還不處理查詢,則 Visual FoxPro 顯示錯(cuò)誤。指定 0 可以無限制地等待查詢結(jié)果。 等待時(shí)間(毫秒) 指定 Visual FoxPro 檢查 SQL 語句是否執(zhí)行結(jié)束之前經(jīng)過的毫秒數(shù)。