iPhone SQLite3 Datetime Вопрос - PullRequest
       10

iPhone SQLite3 Datetime Вопрос

0 голосов
/ 28 апреля 2011

В каком формате лучше хранить дату, чтобы ее можно было легко отформатировать позже с помощью устройства форматирования данных Objective-C? Дата начинается как метка времени Unix, затем становится тем форматом, с которым легче всего работать, хранится в базе данных SQLite3, затем извлекается и обрабатывается с помощью dateformatter. Могу ли я просто использовать метку времени? Или лучше конвертировать его, скажем, в ГГГГ / мм / дд или что-то в этом роде.

1 Ответ

2 голосов
/ 28 апреля 2011

Я думаю, вы захотите сохранить его в формате ГГГГММДДЧЧММСС для удобства сортировки.

Вы пишете sqlite-код напрямую? Почему бы не использовать управляемую структуру данных, такую ​​как Core Data (базовое хранилище данных sqlite), это сделает вашу жизнь намного проще. Этот маленький пример использует NSSortDescriptor для сортировки по столбцу FileDate. AssetItem является подклассом NSManagedObject

NSFetchRequest *nsrequest = nil;
NSEntityDescription *entity = nil;

NSError *error; 

// check to see if the scene exists (could have been downloaded previously)
nsrequest = [[NSFetchRequest alloc] init];
entity = [NSEntityDescription entityForName:@"AssetItem" inManagedObjectContext:managedObjectContext];          
[nsrequest setSortDescriptors:[NSArray arrayWithObject:[[[NSSortDescriptor alloc] initWithKey:@"FileDate" ascending:NO] autorelease]]];     
[nsrequest setEntity:entity];

NSArray *objs = [[managedObjectContext executeFetchRequest:nsrequest error:&error] retain];

for (AssetItem *item in objs) {
    NSLog(@"file date is: %@", [item FileDate]);
}
[objs release];
[nsrequest release]

;

Вы можете много заниматься моделированием, используя встроенные инструменты моделирования данных XCode.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...