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