rake db:test:clone_structure


#{Rails.root}/db/structure.sql 이란 파일이 생겼을 것이다.





참고자료





Posted by 하남각목


-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

{

return 1;

}


-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection(NSInteger)section

{

return self.shopping_list.count;

}


-(UITableViewCell)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{

UITableViewCell cell = [tableView dequeueReusableCellWithIdentifier:@"tableCell"];

if (cell == nil)

cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"tableCell"];


cell.textLabel.text = self.shopping_list[indexPath.row][0];

cell.detailTextLabel.text = [NSString stringWithFormat:@"price = %4.0f, count= %d",

[self.shopping_list[indexPath.row][1] doubleValue],

[self.shopping_list[indexPath.row][2] IntegerValue]];


return cell;

}






참고자료




Posted by 하남각목
TAG DB, ios, tableView

0. Project의 타겟에 있는 Linked Frameworks and Libraries에 libsqlite3.dylib을 추가하자.

  또, 프로젝트 폴더에 .db 파일을 넣어주자.


1. NXViewController.h 파일에 다음을 추가하자.


#import <sqlite3.h>

@interface NXViewController : UIViewController <UITableViewDataSource, UITableViewDelegate>

@property (weak, nonatomic) IBOutlet UITableView *table_view;

@property NSMutableArray * shopping_list;


2. db에 쿼리할 준비를 하자. NXViewController.m에 다음 코드를 추가하자.


NSString *dbFile = [[NSBundle mainBundle] pathForResource:@"shoppingList" ofType:".db"];


sqlite3 * db;

sqlite_open([dbFile cStringUsingEncoding:NSUTF8StringEncoding, &db);


sqlite_stmt * statement;

NSString * query = @"select * from shoppingTable";

sqlite_prepare(db, [query cStringUsingEncoding:NSUTF8StringEncoding], query.length, &statement, nil);


self.shopping_list = [[NSMutableArray alloc] init];


3. db에 쿼리를 날리고 배열에 정리하자.


while (sqlite3_step(statement) == SQLITE_ROW)

{

char * pItem = sqlite_column_text(statement, 0);

double aPrice = sqlite_column_double(statement, 1);

int aCount = sqlite_column_integer(statement, 2);


NSString * sItem = [NSString stringWithCString:pItem encoding:NSUTF8StringEncoding];

NSNumber * nPrice = [NSNumber numberWithDouble:aPrice];

NSNumber * nCount = [NSNumber numberWithInt:aCount];


NSArray * record = [NSArray arrayWithObjects:sItem, nPrice, nCount, nil];

[self.shopping_list addObject:record];

}


4. db에 쿼리가 끝났으면 db를 정리해주자.


sqlite3_finalize(statement);

sqlite3_close(db);


self.table_view.dataSource = self;




참고자료




Posted by 하남각목