macOS/iOS API解説

iOS , Mac アプリケーション開発のために使われる主要フレームワークの日本語情報です。2010年代に書かれた内容です。今後更新はありません。

目次

executeFetchRequest:error:

取り出しリクエストを実行します
-(NSArray *)executeFetchRequest:(NSFetchRequest *)request:
                   error:(NSError **)error:

解説

取り出しリクエストを実行します。

返り値

( NSArray * )

なし

引数

( NSFetchRequest * )request

検索リクエスト

( NSError ** )error

エラーがあった時、ここに返される

クラス

NSManagedObjectContext

Instance Methods

使用可能

10.4

参照

例文

	NSDate *theDate1 = [NSDate dateWithTimeIntervalSinceNow: -10*24*3600]; // 10日間前  //秒 10日*24時間*3600秒(-は過去の日付)
	NSString *predicateCommand = [NSString stringWithFormat:@"createDate > CAST(%.1f, \"NSDate\")",
																	[theDate1 timeIntervalSinceReferenceDate]	//
																		];
	
	NSPredicate *predicate = [NSPredicate predicateWithFormat: predicateCommand ];
	//文字列の検索だったらこういう風にする
		//NSPredicate *predicate = [NSPredicate predicateWithFormat:@"title = '1'"];
	
	// エンティティを指定する
	NSEntityDescription *story = [NSEntityDescription entityForName:@"Story" inManagedObjectContext: [self managedObjectContext]];
			   
	

	// 要求に上記をセット
	NSFetchRequest *request = [[[NSFetchRequest alloc] init] autorelease];
		[request setEntity:story];
		[request setPredicate:predicate];
		[request setFetchLimit: 10u ];	//取り出す最大数 この場合だったら10件分まで取り出す
		//ソート順 日付でソート
		NSSortDescriptor *descriptor=[[[NSSortDescriptor alloc] initWithKey:@"createDate" 
							ascending:NO selector:NSSelectorFromString(@"compare:")] autorelease];
		NSArray *sortArray = [NSArray arrayWithObjects:descriptor,nil];
		[request setSortDescriptors: sortArray ];	//ソートデスクリプタをセットする


	// フェッチ(取り出し)
	NSArray *fetchedObjects = [[self managedObjectContext] executeFetchRequest:request error:nil];