創(chuàng)建ADO.NET注意事項(xiàng)
為了實(shí)現(xiàn)與數(shù)據(jù)庫服務(wù)器的連接,我們必須選擇一種數(shù)據(jù)庫訪問接口。雖然從創(chuàng)建ADO.NET有很多接口可供選擇,但微軟***的數(shù)據(jù)庫訪問接口ADO(ActiveDataObjects)無疑是最有前途的,因?yàn)樗鼮榛跒g覽器的數(shù)據(jù)庫應(yīng)用系統(tǒng)的實(shí)現(xiàn)提供了可能性。
判斷一個(gè)虛擬設(shè)備號是否被占用:SQLExistDeviceNumber。編者注:函數(shù)源代碼發(fā)表在本報(bào)的WWW站點(diǎn)上,地址是:http://www.computerworld.com.cn/98/skill/default.htm。下同。歡迎訪問!找一個(gè)最小的尚未被占用的虛擬設(shè)備號:創(chuàng)建ADO.NET。取得SQLServer安裝目錄下的DATA子目錄路徑:SQLGetDataPath。
創(chuàng)建一個(gè)新設(shè)備:SQLCreateDevice。創(chuàng)建一個(gè)新的數(shù)據(jù)庫:SQLCreateDatabase65。取數(shù)據(jù)庫設(shè)備的詳細(xì)信息:SQLGetDeviceInfo。擴(kuò)大數(shù)據(jù)庫設(shè)備的尺寸:SQLExpandDevice。數(shù)據(jù)庫應(yīng)用系統(tǒng)在運(yùn)行一段之后,數(shù)據(jù)量的增大往往要求數(shù)據(jù)庫增大,進(jìn)而要求擴(kuò)大設(shè)備尺寸。
可惜創(chuàng)建ADO.NET語句要求的尺寸參數(shù)為擴(kuò)大后的新尺寸,而非需要增加的尺寸。所以,必須事先查到設(shè)備的原有尺寸,才能使用DISKRESIZE語句。判斷一個(gè)數(shù)據(jù)庫是否存在:SQLExistDatabase。刪除一個(gè)數(shù)據(jù)庫:SQLDropDatabase。刪除一個(gè)數(shù)據(jù)庫設(shè)備:創(chuàng)建ADO.NET。#t#
取SQLServer的版本信息:SQLGetVersionString。在即將發(fā)行的SQLServer7.0中,不再有數(shù)據(jù)庫設(shè)備的概念,創(chuàng)建數(shù)據(jù)庫也將變得更加簡單。在創(chuàng)建特定的用戶數(shù)據(jù)庫時(shí),為了區(qū)分不同的版本進(jìn)行不同的操作,取得SQLServer的版本是非常重要的。
其中NAME和SIZE這兩個(gè)參數(shù)都很容易得到,麻煩的是物理名PHYSNAME和虛擬設(shè)備號VDEVNO這兩個(gè)參數(shù)。前者要求是一個(gè)服務(wù)器上的物理文件全路徑名;后者要求在1~255之間找一個(gè)沒有被別的設(shè)備占用的號碼。而在編寫數(shù)據(jù)庫管理程序時(shí),用戶的服務(wù)器上有哪些設(shè)備號已經(jīng)被占用,創(chuàng)建ADO.NET裝在哪個(gè)驅(qū)動(dòng)器上,都是無法預(yù)料的。
雖然,使用創(chuàng)建ADO.NET管理工具SQLEnterpriseManager,可以非常方便地創(chuàng)建、刪除數(shù)據(jù)庫設(shè)備,或者擴(kuò)大一個(gè)已經(jīng)存在的數(shù)據(jù)庫,也可以非常方便地創(chuàng)建、刪除或者修改一個(gè)數(shù)據(jù)庫,但是,這個(gè)工具仍然要求我們輸入很多不太常用的參數(shù),界面稍顯復(fù)雜。