Wednesday, 22 January 2014

SQL-FMDB

-(void) createDatabase
{
    NSArray *dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *docDir = [dirPaths objectAtIndex:0];
    NSString *databasePath = [docDir stringByAppendingPathComponent:@"samcontact.sqlite"];
    
    FMDatabase *database = [FMDatabase databaseWithPath:databasePath];
    
    [database open];
    
    [database executeUpdate:@"create table phone(Name varchar, Address varchar, phoneno numeric)"];
    NSLog(@"Database created");
    NSLog(@"Path is : %@ ",databasePath);
    [database close];
}
//INSERT
- (IBAction)btn_insert:(id)sender 
{
    NSArray *dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *docDir = [dirPaths objectAtIndex:0];
    NSString *databasePath = [docDir stringByAppendingPathComponent:@"samcontact.sqlite"];
    
    FMDatabase *database = [FMDatabase databaseWithPath:databasePath];
    
    [database open];
    
    [database executeUpdate:@"insert into phone (Name, Address, phoneno) values(?,?,?)",txt_Name.text,txt_Address.text,txt_Contact.text];
    
    
    UIAlertView *alert =[[UIAlertView alloc]initWithTitle:@"Sample SQLite" message:@"Inserted Successfully" delegate:Nil cancelButtonTitle:@"OK"otherButtonTitles: nil];
    [alert show];
    
    [database close];
    
    txt_Name.text = @"";
    txt_Address.text = @"";
    txt_Contact.text = @"";
}
//SELECT
- (IBAction)btn_Select:(id)sender 
{
    NSArray *dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *docDir = [dirPaths objectAtIndex:0];
    NSString *databasePath = [docDir stringByAppendingPathComponent:@"samcontact.sqlite"];
    NSString *str;
    NSString *num;
    NSString *name;
    FMDatabase *database = [FMDatabase databaseWithPath:databasePath];
    
    [database open];
    FMResultSet *results = [database executeQuery:@"select * from phone where Name = ?",txt_Name.text];
    
     NSLog(@"select * from phone where Name = \"%@\"",txt_Name.text);
    
    while ([results next])
    {
        name = [results stringForColumn:@"Name"];
        str = [results stringForColumn:@"Address"];
        num = [results stringForColumn:@"phoneno"];
        
        UIAlertView *alert =[[UIAlertView alloc]initWithTitle:@"Sample SQLite" message:@"Find Successfully" delegate:Nil cancelButtonTitle:@"OK"otherButtonTitles: nil];
        [alert show];
        
    }
    txt_Name.text = name;
    txt_Address.text = str;
    txt_Contact.text = num;
    
    
    
    [database close];


}

No comments:

Post a Comment