我想知道是否可以使用KVC来生成SQL。我正在做一个轻的ORM;我想要做的是这样的(伪):使用KVC生成SQL?
for key in object.getKeys
sql = sql + formatField(key,objet.value[key]);
,并得到:
INSERT INTO Table (Field1) VALUES (1);
在Objective-C这可能吗?
我想知道是否可以使用KVC来生成SQL。我正在做一个轻的ORM;我想要做的是这样的(伪):使用KVC生成SQL?
for key in object.getKeys
sql = sql + formatField(key,objet.value[key]);
,并得到:
INSERT INTO Table (Field1) VALUES (1);
在Objective-C这可能吗?
我发现class_copyPropertyList
这样填满账单。
我从SQLite持久对象中获得。我只需要知道如何实现关系;)
键值编码无法真正做到这一点,但是如果您不想为对象构建特定的数据访问层,则可以使用NSDictionary来执行此任务。下面是数字字段的一个简单示例:
for (NSString *key in [dictionary allKeys])
{
fields = [fields stringByAppendingFormat:@", %@", key];
values = [values stringByAppendingFormat:@", %ld", (long)[[dictionary objectForKey:key] integerValue]];
}
NSString *sql = [NSString stringWithFormat:@"INSERT INTO Table (%@) VALUES (%@);", fields, values];
你想要的声音听起来非常类似于SQLite持久对象。这是一套基本上可以完成你所谈论的Objective-C类的工作。关于类和源的详细信息(如果你想编写自己的版本,可能对你特别有意思)可以在这里找到:http://iphonedevelopment.blogspot.com/2008/08/sqlite-persistent-objects.html