sybase12.5 dsedit 找不到libtcl.dll錯(cuò)誤處理辦法
- 環(huán)境:windowsXP
- 數(shù)據(jù)庫(kù)版本:sybase12.5(開(kāi)發(fā)版)
- 客戶端:clinet(pcclinet12.5)、DBArtisan 8.5.2
- 模型設(shè)計(jì)工具:power builder12.5
????????sybase自帶的客戶端有兩種:一種是命令行模式的叫做sqladv.ext,另一種是界面模式的叫做Sybase Central Java Edition對(duì)應(yīng)這兩個(gè)版本的client凡是使用過(guò)toad的人都覺(jué)得不順手,太不順手了,即使是用慣了plsql的人也有這種感覺(jué)。
??????? DBArtisan (8.5.2)是類(lèi)toad的數(shù)據(jù)庫(kù)訪問(wèn)client工具,但是在操作性上感覺(jué)還是不如toad那樣強(qiáng)大、成熟,也許是用慣toad 的原因吧,在做sybase數(shù)據(jù)連接以前和oracle一樣需要先配置一個(gè)客戶端別名,sybase配置這個(gè)別名的地方是dsedit.ext這個(gè)命令,有一點(diǎn)需要注意的是:在add了一個(gè)server以后你還需要給這個(gè)server添加一個(gè)ip和端口,格式如:ip,port(請(qǐng)注意ip和port之間是一個(gè)逗號(hào)而不是冒號(hào))。
??????? 相信現(xiàn)在許多人都在用pd做數(shù)據(jù)模型設(shè)計(jì),如果要用pd連接sybase做反向工程的話,那就要通過(guò)odbc來(lái)連接了,但是不幸的是你一般安裝的sybase數(shù)據(jù)庫(kù)和他的client端都不會(huì)像oracle那樣給你也裝一個(gè)odbc進(jìn)去,需要再下載一個(gè)sybase的odbc驅(qū)動(dòng)。更不幸的是要從sybase上下一個(gè)odbc驅(qū)動(dòng)可能和你安裝的sybase數(shù)據(jù)庫(kù)和客戶端的版本并不一致,此時(shí)舊版的dll會(huì)干掉以前安裝的新版sybase數(shù)據(jù)庫(kù)的dll文件,導(dǎo)致dsedit不可用,連sqladv也不可用,甚至DBArtisan這樣強(qiáng)大的工具你也不能再用了,說(shuō)白了,你現(xiàn)在只能通過(guò)Sybase Central Java Edition添加或刪除一個(gè)數(shù)據(jù)庫(kù)、表,或者對(duì)數(shù)據(jù)庫(kù)的參數(shù)做一些調(diào)整,比如:你的設(shè)備空間不足了,連接數(shù)、查看某個(gè)表的數(shù)據(jù),僅此而已。想用sql嗎?對(duì)不起,不能用了。網(wǎng)上查了許多帖子,居然是個(gè)無(wú)解的問(wèn)題。那我來(lái)告訴你一個(gè)答案:
??????? 首先,我們先分析一下造成這個(gè)問(wèn)題可能的原因,之前一切都正常可用,自從安裝了某個(gè)工具(比如舊版的sybase odbc11.1之類(lèi)的東西)以后導(dǎo)致點(diǎn)擊sqladv.exe報(bào)錯(cuò)“找不到libtcl.dll”,我們可以假設(shè)是sybase odbc在安裝以后覆蓋掉了sybase原有的dll文件,那這些文件在哪里呢,在[sybase root]\OCS-12_5\dll這個(gè)目錄下,這個(gè)目錄下還有2個(gè)文件夾里的dll和這里的dll文件名一樣,那兩個(gè)文件夾一個(gè)叫debug一個(gè)叫nodebug,不用腦子都想得出來(lái)是干什么的。
????????原因分析清楚了,那就是因?yàn)榕f版的dll文件把我們新版本的dll給覆蓋了,直接拷貝[sybase root]\OCS-12_5\dll目錄下的所有dll文件將他們復(fù)制到C:\WINDOWS\system32下,問(wèn)題解決
??????? 這樣前面安裝的odbc居然也可以使用!太完美了。
posted on 2009-03-22 19:35 javajohn 閱讀(4684) 評(píng)論(4) 編輯 收藏 所屬分類(lèi): 數(shù)據(jù)庫(kù)