cocos2dx 3.6 引入sqlite3數據庫模塊

版權聲明:本文爲博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/anzijin/article/details/47977913

cocos2dx 3.6 引入sqlite3數據庫模塊

cocos版本:v2.3.2Beta

cocos2dx版本:v3.6版


            之前使用2.2.6版本的cocos2dx,有使用sqlite的需求,實現方式是直接到sqlite官網下載“sqlite3.h”和“sqlite3.c”兩個文件,並將源文件拷貝到工程的class文件夾中,在工程中直接#include “sqlite3.h”進行引用。

            升級到cocos2dx引擎的後,隨着對cocos2dx引擎瞭解的深入,發現cocos2dx引擎中已經集成了sqlite3模塊。具體目錄在C:\Cocos\frameworks\cocos2d-x-3.6\external\sqlite3。直接引入調用sqlite數據庫的代碼。

#include "cocos2d.h"
#include "sqlite3.h"
USING_NS_CC;




class DatabaseOperate
{
public:
	
	bool OpenDataBase(char * name);  //打開一個數據庫
	bool CreateTable(char * name, char * tableStruct);  //創建表
	bool IsTableExit(char * name);  //判斷表是否存在
	void CloseDataBase(); //關閉數據庫
	int GetTableDataCounter(char* tableName);//獲取表格中數據的個數
protected:
	sqlite3 *m_pdb;


};


提示:#include "sqlite3.h" 語句錯誤無法找到sqlite3.h文件。分析是該h文件沒在工程的include目錄中導致的.於是執行以下操作:

右鍵工程->屬性->配置屬性->C/C++ ->常規->附加包含目錄中增加以下目錄

C:\Cocos\frameworks\cocos2d-x-3.6\external\sqlite3\include


再重新進行編譯則編譯成功。

備註:

1、cocos生成的VS項目工程中,並沒有將C:\Cocos\frameworks\cocos2d-x-3.6\external\第三方模塊都加入到工程的include目錄中,至加入了少數的幾個,開發者引入第三方庫時,需要自己手動加入。

2、由於“C:\Cocos\frameworks\cocos2d-x-3.6\external”,已經加入到了工程的include目錄中,曾嘗試將include代碼寫成#include "sqlite3/include/sqlite3.h",該處理方法可以使工程成功通過編譯,但在鏈接sqlite3.lib時會出現錯誤,錯誤編號爲LNK2019。

       推測原因應該是include中的文件路徑擾亂和lib文件中的相關輸出函數的調用。具體原理有待進一步分析



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章