相当新的sqlite(和sql)。我有几个表,我需要与几个列名称,可以改变我的代码(在C + +)生成。我如何管理它们?我做对了吗?在那里必须有实用程序代码,这要好得多。sqlite表代码管理器?
编辑:特别是,我想通过在编译时抽象表和字段名称来避免运行时错误(例如使用#define,但也许别的更好)。
E.g.我目前正在考虑创建一个类TableHandler,它将:
sqlite *db;
....
TableHandler tb("TableName");
tb.addField("FirstName", "TEXT");
tb.addField("Id", "INTEGER");
tb.createTable(db); //calls sqlite3_exec("create table TableName(FirstName TEXT, Id INTEGER)");
tb.setEntry("FirstName", "bob");
tb.addEntry(); //calls sqlite3_exec("insert ...");
tb.createCode(stdout);
//this will generate
/*
#define kTableName "TableName"
#define kFirstName "FirstName"
#define kId "Id"
...anything else useful?
*/
你说的共享代码是什么意思?有没有理由不写'CREATE TABLE'语句? – mikerobi
我想要一个摘要,以便我可以轻松调整表格,以便根据需要调整表格(甚至可以重命名表格或字段)。 E.g. tb.setEntry(“FirstOppsName”,“bob”); //字段不存在。我如何在编译时防止这些问题? tb.setEntry(kFirstName,“bob”); //这是一个解决方案。 – jobobo