我最近使用sqlite3和c语言。谁能告诉我一些方便的ORM for c? 是否有必要为我自己的项目开发ORM机制?
答案 0 :(得分:3)
我写了this library作为“ORM for C”。
示例代码如下:
typedef struct person {
int id;
char *name;
} person;
void find_by_name(isti_db *db, const char *text, person** result) {
corm_person_select *s;
corm_person_select_alloc(&s, db);
s->name(s, "like", text)->_go_one(s, result); // populate result from the database
s->_free(s, 0); // in "real" code, 0 is a chained status value
}
不幸的是,它并没有在任何地方使用(据我所知),它包含了很多经验丰富的c程序员可能会觉得奇怪的想法。但它并没有被抛弃 - 我仍然对这个问题感兴趣,并希望在某个时候继续研究它。
答案 1 :(得分:2)
对ORM的需求告诉我,您有一些业务/域对象模型,您想要映射到数据库。
如果是这种情况,那么我觉得你试图用最适合系统编程的语言编写业务应用程序(C)。您可能想要考虑这是否是一个好的架构策略。
此外,我认为ORM不太可能适合以下语言:
答案 2 :(得分:0)
简短的谷歌搜索提出了这个问题:http://ales.jikos.cz/smorm/
我从未使用它,所以如果它重新格式化你的所有硬盘驱动器并使你的冰箱足够温暖以便破坏你的牛奶,不要怪我,但如果你真的不这样做,它看起来可能比什么都好想写查询。