Giter Club home page Giter Club logo

ytkkeyvaluestore's People

Contributors

hqlulu avatar kevinzhow avatar syeer avatar tangqiaoboy avatar zhenian avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ytkkeyvaluestore's Issues

存入数据为nsnumber何nsstring异常

存入一个为@(0),@(1),@"1",@"0",都出现异常,

NSData * data = [NSJSONSerialization dataWithJSONObject:object options:0 error:&error];

===== po object
@"1"

===== po [object class]
error: Couldn't materialize: couldn't allocate a temporary region for the result: failed to send packet: 'M103d60620,8:0000000000000000'
error: errored out in DoExecute, couldn't PrepareToExecuteJITExpression

上面那四种 我都试过了 都崩溃 这个虽然是系统的方法 但是 应该是没问题的 现在问什么崩溃,还望解答

请问,为什么库提供的接口里都带有一个tablename的参数?

唐巧,您好!
我详细看了一下源代码,有这个疑问。为什么不把tableName作为一个实例变量保存,这样调用方就不需要每次传进一个tableName。很多时候,提供keyValue的操作,其实,不关心tablename具体是什么。只要在初始化的时候,设置一次即可。请问,您之前是怎么做这个权衡的?

数据库表中json字段使用的TEXT类型存储,是否尝试过存BLOB类型的NSData

使用过程中,发现单张table的大小有些夸张:
1、存储1万条数据,使用NSJSONSerialization转TEXT类型存储后的大小是4.4M;
2、改变表里存的json string数据类型为data后,改用NSKeyedArchiver将jsonObject转NSData,大小为61k;

请问是否有做过此类的测试?

测试代码如下:
YTKKeyValueStore *store = [[YTKKeyValueStore alloc] initDBWithName:@"test.db"];
NSString *tableName = @"zm_table";
[store createTableWithName:tableName];

// 测试存储 1万条数据的大小
NSString *key = @"1";
NSDictionary *user = @{@"id": @1,
                       @"name": @"tangqiao",
                       @"age": @30,
                       @"news": @"测试存储 1万条数据的大小测试存储 1万条数据的大小测试存储 1万条数据的大小测试存储 1万条数据的大小测试存储 1万条数据的大小",
                       @"detail":@"测试存储 1万条数据的大小测试存储 1万条数据的大小测试存储 1万条数据的大小测试存储 1万条数据的大小测试存储 1万条数据的大小测试存储 1万条数据的大小"};
NSMutableArray *array = [NSMutableArray array];
for (int i = 0; i < 10000; i++) {
    [array addObject:user];
}
NSDictionary *dict = @{@"news": array};

[store putObject:dict withId:key intoTable:tableName];

测试形式:
NSData * data = [NSJSONSerialization dataWithJSONObject:object options:0 error:&error];
NSData *data1 = [NSKeyedArchiver archivedDataWithRootObject:object];

NSLog(@"JSONSerialization Data Size = %@",
      [NSByteCountFormatter stringFromByteCount:data.length
                                     countStyle:NSByteCountFormatterCountStyleFile]);
NSLog(@"KeyedArchiver Data Size = %@",
      [NSByteCountFormatter stringFromByteCount:data.length
                                     countStyle:NSByteCountFormatterCountStyleFile]);

测试结果:
2016-03-23 10:40:14.154 YTKKeyValueStore[68148:2019750] JSONSerialization Data Size = 4.4 MB
2016-03-23 10:40:14.154 YTKKeyValueStore[68148:2019750] KeyedArchiver Data Size = 61 KB

谢谢!

是否可以考虑支持下面的场景

场景:
一个微博有很多个评论;显示该微博的所有评论;需要传递微博ID;
如果要删除某个评论,需要传递的是评论ID.

是否可以考虑支持上面的场景呢。

咨询一个问题

  • (id)getObjectById:(NSString *)objectId fromTable:(NSString *)tableName
    我用这个方法取数据,在iPhone4s(iOS7.1)上取出的值为nil,但是在iPhone6的模拟器(Xcode6,iOS8)上就有值,我没太明白为什么?如果您知道,希望分享一下,谢谢

数据库表判断不存在?

巧哥,你好,最近遇到一个很糟心的问题,正常使用着,启动做数据库升级判断user表是否存在,有的用户返回了NO,怀疑是数据库损坏,表丢失或者数据库打开失败(代码中没有对库表删除的操作),但是没法复现验证,巧哥觉得会是什么问题呢?

Store对象需不需要close?

巧哥你好。
YTKKeyValueStore提供了一个close方法,这个方法一般需不需要用呢?
如果不close,占用的系统资源多不多?
我发现close之后,没有api可以让我再打开数据库,就只能重新生成一个store对象了吗?

ERROR, failed to insert/replace into table

您好,我在插入数据的时候,插入了一个数组,JSON那一步没有报错,但是在插入的时候总是报 ERROR, failed to insert/replace into table这个错误,不知道是什么原因

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.