database
TRANSCRIPT
![Page 1: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/1.jpg)
DATABASE
Elton Mendes
![Page 2: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/2.jpg)
Introdução
![Page 3: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/3.jpg)
iOS suporta SQLite3 e
COREDATA*
![Page 4: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/4.jpg)
Porém o suporte de SQLITE3 nativo
não é tão bom assim...
![Page 5: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/5.jpg)
Por isso vamos utilizar uma lib com
4k estrelas no github!
![Page 6: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/6.jpg)
FMDB
![Page 7: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/7.jpg)
● 4k estrelas no github
● Camada feita em cima do sqlite3 nativo da apple
● Fácil de usar
● Tratamento de erro e de acesso ao database
FMDB
![Page 8: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/8.jpg)
Criar database:
FMDatabase *db = [FMDatabase
databaseWithPath:@"temp.db"];
![Page 9: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/9.jpg)
Sempre abra o database antes de
qualquer consulta/update/delete
[db open];
![Page 10: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/10.jpg)
Sempre abra o database antes de
qualquer consulta/update/delete
[db open];
![Page 11: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/11.jpg)
Insert ou Delete:
success = [db
executeStatements];
![Page 12: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/12.jpg)
Select
FMResultSet * s = [db
executeQuery:];
![Page 13: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/13.jpg)
Lembre-se de
fazer um
singleton desse
DB !!!
![Page 14: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/14.jpg)
+ (id)sharedInstance
{
dispatch_once(&p, ^{
_sharedObject = [[self alloc] init];
});
return _sharedObject;
}
![Page 15: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/15.jpg)
Mas e o coredata?
![Page 16: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/16.jpg)
Coredata - Framework de persistencia
Nativo da apple
Interface Gráfica
Difícil de usar
Matar uma formiga com um canhão
1
2
3
4
![Page 17: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/17.jpg)
Bora Praticar?
![Page 18: Database](https://reader035.vdocuments.pub/reader035/viewer/2022081001/55a7962e1a28ab8b1f8b4749/html5/thumbnails/18.jpg)
https://github.com/ccgus/fmdb