⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xkexecengine.h

📁 简单数据库管理系统
💻 H
字号:
// xkExecEngine.h: interface for the xkExecEngine class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_XKEXECENGINE_H__3E0A15B4_7A4D_4137_A755_097B83796414__INCLUDED_)
#define AFX_XKEXECENGINE_H__3E0A15B4_7A4D_4137_A755_097B83796414__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "xkDict.h"
#include "xkMemCoordinator.h"
#include "Vector.h"
#include "xktype.h"
//--执行引擎是外模式到概念模式的映射--
//执行引擎通过调用概念模式中数据字典的功能为SQL解析器
//提供内存数据操作服务接口
class xkExecEngine  
{
public:
	bool UpdateTuple(const char* tablename_, Vector<char*>& fieldlist_, Vector<char*>& valuelist_, char* key_, char* keyval_);
	bool InsertTuple(const char* tablename_, char* source_, size_t size_);
	void DisplayTable(const char* tablename_, Vector<char*> *fieldlist_ = 0);
	void DeleteAllRecords(const size_t rid_);
	char* GetTableAllRecords(const size_t rid_);
	void CreateTable(const size_t RID_);
	size_t GetTabletuplesize(const size_t rid_);
	void SaveAll();
	void LoadAll();
	void SaveTable(const char* tablename_);
	void LoadTable(const char *tablename_);
	bool InsertTuple(const char *tablename_, Vector<char*>& fieldlist_, Vector<char*>& valuelist_);
	bool UpdateTuple(const char* tablename_, const xkAttribute & attr_, const void* originalval_, const void* value_);
	bool GetSelectedTuple(const char* tablename_, const char* key_, char* keyval_, Vector<char*> *fieldlist_ = 0);
	bool DeleteTuple(const char* tablename_, const char* key_, char* keyval_);
	bool DropRelation(const char* tablename_);
	bool CreateRelation(const char* tablename_, Vector<char*> &fields_, Vector<int> &type_, Vector<bool> &iskey_, int count_);
	void SaveDict();
	void LoadDict();
	void GetAllTablename(Vector<char*>&);
	xkExecEngine():pDict_(0), pMem_(0){}
	virtual ~xkExecEngine();
	int FindTable(const char* tablename_);	
	void GetTableAttributename(const size_t id_, Vector<char*>& vec_);
	xkExecEngine(xkDict*, xkMemCoordinator*);
	void GetTableAttribute(const size_t id_, xkAttriStruct& pas_);
private:
	xkDict* pDict_;
	xkMemCoordinator* pMem_;
};


#endif // !defined(AFX_XKEXECENGINE_H__3E0A15B4_7A4D_4137_A755_097B83796414__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -