PB10中Microsoft OLE DB數(shù)據(jù)庫連接配置
2024-07-21 02:10:08
供稿:網(wǎng)友
pb10中ole microsoft ole db數(shù)據(jù)庫連接配置
pb10的測(cè)試版本已經(jīng)推出來有段時(shí)間。可是我直到現(xiàn)在我才開始試用:$ 。pb10 beta 1可以到下面兩個(gè)地址下載:
1、陶清:http://www.pdriver.com/display.asp?key_id=1563
2、sybase:http://www.sybase.com/detail?id=1027224
pb10的新特性大家可以從相關(guān)網(wǎng)站查找,這里就不多說了。我在這里主要想介紹一下 pb10中新增的ole microsoft ole db數(shù)據(jù)連接方式。這是因?yàn)槲④洀?/2000的版本已經(jīng)不再對(duì)直接方式提供支持,因?yàn)橹苯臃绞讲⒉荒苤С炙衜s sql server的特性。
pb10版本的數(shù)據(jù)連接配置和先前版本的界面沒什么區(qū)別,和以前一樣點(diǎn)db profile就可以進(jìn)去了。如圖:
大家請(qǐng)注意紅框地方,配置的時(shí)候和以前版本也沒什么區(qū)別。但最重要的是extended處。因?yàn)槲易约涸谑褂玫臅r(shí)候,找了半天也沒找到哪兒可以選擇數(shù)據(jù)庫:$。在這里我們可以填上一些附加的屬性。在這里,我就只加上database=pubs。好了,就是這么簡單。生成連接語法如下:
// profile pubs
sqlca.dbms = "ole db"
sqlca.logpass = "mypwd"
sqlca.logid = "sa"
sqlca.lock = "rc"
sqlca.autocommit = false
sqlca.dbparm = "provider='sqloledb',datasource='sunset',providerstring='database=pubs'"
接下來再介紹第二種方式—使用通用數(shù)據(jù)鏈接udl文件。我們除了象原來那樣直接配置之外,還可以使用配置文件,也就是udl文件,這個(gè)類似于我們的ini文件。如圖:
生成的連接語句如下:
// profile pubs_udl
sqlca.dbms = "ole db"
sqlca.autocommit = false
sqlca.dbparm = "datalink='g:/pbprj/pb10 amples/pubs.udl'"
做好上面的工作后,我們測(cè)試一下連接,看是否成功。如圖:
顯示ole db操作錯(cuò)誤。點(diǎn)擊確定。出現(xiàn)下圖:
這是怎么回事?其實(shí)我們?cè)谶B接access等數(shù)據(jù)庫的時(shí)候也會(huì)出現(xiàn)這個(gè)問題—無法創(chuàng)建以pbcat開頭的pb目錄表(catalog tables)。如果在您系統(tǒng)中不需要使用到pb的目錄表,那么您就可以完全不用理會(huì)這個(gè)提示,因?yàn)樗詈蟾嬖V我們已經(jīng)連接成功,事實(shí)也是如此。
但是為什么會(huì)出現(xiàn)這個(gè)錯(cuò)誤呢?我們還是稍微追查一下原因。如果您安裝了msdn,那么您可以到下面這個(gè)鏈接去看一看。
ms-help://ms.msdnqtr.2003feb.2052/oledb/htm/sql_server_provider.htm
從中我們知道,ole db provider for sql serve有一些已知的局限性。這就是:although the oledb for sql server provider implements itabledefinitionwithconstraints, ialterindex and ialtertable, these interfaces are not exposed if it runs as local_server。(盡管sqloledb實(shí)現(xiàn)了itabledefinitionwithconstraints、ialterindex和ialtertable,但是當(dāng)sqloledb作為本地服務(wù)器運(yùn)行時(shí)這些接口并不可使用)。因此,我想,就是因?yàn)檫@個(gè)原因而導(dǎo)致pb連接數(shù)據(jù)庫,在創(chuàng)建目錄表時(shí),而導(dǎo)致的ole db多步操作錯(cuò)誤(這只是我想到的原因,請(qǐng)大家指點(diǎn))。但無論如何,希望在正式版中不要出現(xiàn)這個(gè)討厭的提示。
另外,關(guān)于udl的介紹,我們可以到下面這個(gè)地址去查看:
ms-help://ms.msdnqtr.2003feb.2052/vsintro7/html/vxtskcreatingconfiguringuniversaldatalinkfiles.htm