javajohn

          金色年華

          sybase12.5 dsedit 找不到libtcl.dll錯誤處理辦法

          • 環境:windowsXP
          • 數據庫版本:sybase12.5(開發版)
          • 客戶端:clinet(pcclinet12.5)、DBArtisan 8.5.2
          • 模型設計工具:power builder12.5

          ????????sybase自帶的客戶端有兩種:一種是命令行模式的叫做sqladv.ext,另一種是界面模式的叫做Sybase Central Java Edition對應這兩個版本的client凡是使用過toad的人都覺得不順手,太不順手了,即使是用慣了plsql的人也有這種感覺。
          ??????? DBArtisan (8.5.2)是類toad的數據庫訪問client工具,但是在操作性上感覺還是不如toad那樣強大、成熟,也許是用慣toad 的原因吧,在做sybase數據連接以前和oracle一樣需要先配置一個客戶端別名,sybase配置這個別名的地方是dsedit.ext這個命令,有一點需要注意的是:在add了一個server以后你還需要給這個server添加一個ip和端口,格式如:ip,port(請注意ip和port之間是一個逗號而不是冒號)。
          ??????? 相信現在許多人都在用pd做數據模型設計,如果要用pd連接sybase做反向工程的話,那就要通過odbc來連接了,但是不幸的是你一般安裝的sybase數據庫和他的client端都不會像oracle那樣給你也裝一個odbc進去,需要再下載一個sybase的odbc驅動。更不幸的是要從sybase上下一個odbc驅動可能和你安裝的sybase數據庫和客戶端的版本并不一致,此時舊版的dll會干掉以前安裝的新版sybase數據庫的dll文件,導致dsedit不可用,連sqladv也不可用,甚至DBArtisan這樣強大的工具你也不能再用了,說白了,你現在只能通過Sybase Central Java Edition添加或刪除一個數據庫、表,或者對數據庫的參數做一些調整,比如:你的設備空間不足了,連接數、查看某個表的數據,僅此而已。想用sql嗎?對不起,不能用了。網上查了許多帖子,居然是個無解的問題。那我來告訴你一個答案:
          ??????? 首先,我們先分析一下造成這個問題可能的原因,之前一切都正常可用,自從安裝了某個工具(比如舊版的sybase odbc11.1之類的東西)以后導致點擊sqladv.exe報錯“找不到libtcl.dll”,我們可以假設是sybase odbc在安裝以后覆蓋掉了sybase原有的dll文件,那這些文件在哪里呢,在[sybase root]\OCS-12_5\dll這個目錄下,這個目錄下還有2個文件夾里的dll和這里的dll文件名一樣,那兩個文件夾一個叫debug一個叫nodebug,不用腦子都想得出來是干什么的。
          ????????原因分析清楚了,那就是因為舊版的dll文件把我們新版本的dll給覆蓋了,直接拷貝[sybase root]\OCS-12_5\dll目錄下的所有dll文件將他們復制到C:\WINDOWS\system32下,問題解決
          ??????? 這樣前面安裝的odbc居然也可以使用!太完美了。

          posted on 2009-03-22 19:35 javajohn 閱讀(4677) 評論(4)  編輯  收藏 所屬分類: 數據庫

          Feedback

          # re: sybase12.5 dsedit 找不到libtcl.dll錯誤處理辦法 2009-06-18 09:31 pestd

          太感謝了  回復  更多評論   

          # re: sybase12.5 dsedit 找不到libtcl.dll錯誤處理辦法 2013-07-15 11:35 幻魔

          大神啊 我找了兩天都沒解決,今天看到你這完美KO@pestd
            回復  更多評論   

          # re: sybase12.5 dsedit 找不到libtcl.dll錯誤處理辦法 2016-02-25 15:25 咸菜

          大神的帖子真有用  回復  更多評論   

          # re: sybase12.5 dsedit 找不到libtcl.dll錯誤處理辦法 2016-02-25 15:28 咸菜

          @咸菜 補充解答
          64位系統要覆蓋“C:\Windows\SysWOW64”這個目錄下的dll  回復  更多評論   


          My Links

          Blog Stats

          常用鏈接

          留言簿(7)

          隨筆分類(36)

          隨筆檔案(39)

          classmate

          good blog

          企業管理網站

          好友

          站點收藏

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 宣武区| 海丰县| 永兴县| 石景山区| 大姚县| 肃南| 明光市| 东台市| 平远县| 东莞市| 柳州市| 隆昌县| 丹江口市| 昌都县| 潮州市| 岑溪市| 章丘市| 临邑县| 通榆县| 阿克陶县| 阜康市| 桑植县| 新昌县| 卓尼县| 夏津县| 玛多县| 岑巩县| 高平市| 错那县| 海城市| 新竹县| 东海县| 荥经县| 夏河县| 阿鲁科尔沁旗| 昌邑市| 株洲县| 贡觉县| 阿勒泰市| 丰原市| 无极县|