gbase导入sql文件_Gbase配置
喵了個(gè)咪的。到目前為止,自己已經(jīng)用過(guò)SQL SERVER,My SQL,Oracle,SQLite,加上南大通用GBASE 五種數(shù)據(jù)庫(kù)了。雖然每種都用的不深
注:GBASE提供了C的API,查看手冊(cè)即可。不支持string。
用C++配置GBASE:
對(duì)方提供了32位和64位windows下的庫(kù)。
在程序中添加 gbase.h errmsg.h 兩個(gè)頭文件 ,導(dǎo)入gbaseclient.lib libgbase.lib 兩個(gè)lib文件,再添加libgbase.dll
完畢。
但是出現(xiàn)了一堆 error LNK2005的問(wèn)題,大概是說(shuō):
原來(lái)會(huì)發(fā)生這些奇怪的錯(cuò)誤狀況,是因?yàn)槌绦蛲瑫r(shí)鏈接了 LIBCMTD.lib與MSVCRTD.lib而造成函數(shù)定義版本沖突。也就是說(shuō),程序鏈接器已經(jīng)在其中一個(gè) CRT的版本中找到所需的函數(shù)定義,但此時(shí)卻又跳出另外一位 CRT,也給了一份相同函數(shù)的實(shí)現(xiàn)版本,所以鏈接器無(wú)法判斷應(yīng)該忽略誰(shuí)并且選擇誰(shuí)。
參考網(wǎng)址:http://www.cnblogs.com/qinfengxiaoyue/archive/2013/02/01/2889668.html
這個(gè)網(wǎng)址說(shuō)的很詳細(xì),方便概念理解,但是按照這種方法不能夠?qū)崿F(xiàn)。
關(guān)鍵詞:程序庫(kù)、CRT、LIBCMTD.lib、MSVCRTD.lib、鏈接庫(kù)的沖突問(wèn)題、MSVC鏈接處理
閱讀前需要對(duì)靜態(tài)庫(kù)(.lib)、動(dòng)態(tài)庫(kù)(.dll)、導(dǎo)入庫(kù)(這個(gè)還是.lib)之間的區(qū)別聯(lián)系有了解。建議先讀讀宋寶華先生的《VC++動(dòng)態(tài)鏈接庫(kù)(DLL)編程深入淺出 》
其實(shí)我也不懂。馬克一下這本書。最近碰到dll的問(wèn)題太多了,真的該看一下。
我的解決方法:
1. 屬性-C/C++ - 代碼生成-多線程調(diào)試(MDd)。因?yàn)槲沂莇ebug下。
2.屬性-- 鏈接器(Linker) .忽略特定默認(rèn)庫(kù) libcmt.lib
3.屬性-清單文件-生成清單-否
注:有個(gè)很屌的操作,剛學(xué)會(huì)的。
在“項(xiàng)目 -> 屬性 -> 鏈接器 -> 命令行”欄中,輸入 /verbose:lib編譯參數(shù),這樣,就可以在output窗口看到鏈接時(shí)搜索的庫(kù)的先后順序,對(duì)于本問(wèn)題,你一定可以看到lib的調(diào)用順序
總結(jié)
以上是生活随笔為你收集整理的gbase导入sql文件_Gbase配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: JAVA求哈希码
- 下一篇: 浅谈kvm切换器安全性