iOS中SQLite的操作方法
今天終于花了點(diǎn)時(shí)間把之前項(xiàng)目中使用到的對(duì)SQLite操作的方法整理一下并上傳到github上,下載地址:(https://github.com/peanutNote/QYSQLiteManagerDemo.git)。
與其他第三方目的一樣,主要是為了使代碼中有關(guān)對(duì)SQLite操作簡(jiǎn)單化,具體用法:
將QYSQLiteManager文件add到項(xiàng)目中,并在需要對(duì)SQLite進(jìn)行操作的類中添加#import "QYSQLiteManager" 。
// 插入語(yǔ)句
- (void)insertTable
{
// 創(chuàng)建sql語(yǔ)句
NSString *sql = @"insert into teacher(name,id) values(?,?)";
// 不可變參數(shù)
// BOOL isOK = [QYSQLiteManager insertTableWithSqlString:sql andArray:@[@"小明",@115]];
// 可變參數(shù)
BOOL isOK = [QYSQLiteManager insertTableWithSqlString:sql andObjects:@"小明",@"115", nil];
if (isOK) {
NSLog(@"數(shù)據(jù)插入成功");
} else {
NSLog(@"數(shù)據(jù)插入失敗");
}
}
// 查詢語(yǔ)句
- (void)selectTable
{
NSString *sql = @"select * from teacher";
[QYSQLiteManager selectTableWithSqlString:sql didFinishedBlock:^(NSArray *dataList, NSString *error) {
NSLog(@"%@",dataList);
} andObjects:nil];
}
// 修改表語(yǔ)句
- (void)alterTable
{
NSString *sql = @"alter table teacher add column pwd integer";
if([QYSQLiteManager alterTableWithSqlString:sql])
{
NSLog(@"修改成功");
}
}
// 更新數(shù)據(jù)語(yǔ)句
- (void)updateTable
{
NSString *sql = @"update teacher set name = ? where id = ?";
if ([QYSQLiteManager updateTableWithSqlString:sql andArray:@[@"小明",@115]]) {
NSLog(@"更新成功");
}
}
有關(guān)查詢語(yǔ)句返回的數(shù)據(jù)類型,有需要的同學(xué)可以自行在“QYSQLiteManager.m”中查找“sqlite3_bind_text”,然后在如下處
for (int i = 0; i < column_count; i++) {
// 獲取字段名
char * keyName = (char *)sqlite3_column_name(stmt, i);
NSString *key = [NSString stringWithUTF8String:keyName];
if (sqlite3_column_type(stmt, i) == SQLITE_TEXT) { // 當(dāng)字段數(shù)據(jù)是“text”時(shí)
// 獲取字段對(duì)應(yīng)的數(shù)據(jù)
char *valueName = (char *)sqlite3_column_text(stmt, i);
NSString *value = [NSString stringWithUTF8String:valueName];
[dataDic setObject:value forKey:key];
} else { // 當(dāng)字段數(shù)據(jù)是integer時(shí)
int value = sqlite3_column_int(stmt, i);
[dataDic setObject:@(value) forKey:key];
}
}
修改你自己想要的數(shù)據(jù)類型即可。
以上內(nèi)容是小編給大家日常收集整理的iOS sqlite對(duì)數(shù)據(jù)庫(kù)的各種操作,希望對(duì)大家有所幫助
- iOS App項(xiàng)目中引入SQLite數(shù)據(jù)庫(kù)的教程
- iOS中sqlite數(shù)據(jù)庫(kù)的原生用法
- iOS中sqlite的詳細(xì)用法
- iOS中SQLite使用教程
- iOS sqlite對(duì)數(shù)據(jù)庫(kù)的各種操作(日常整理全)
- 簡(jiǎn)介iOS開(kāi)發(fā)中應(yīng)用SQLite的模糊查詢和常用函數(shù)
- iOS應(yīng)用開(kāi)發(fā)中SQLite的初步配置指南
- iOS開(kāi)發(fā)中使用FMDB來(lái)使程序連接SQLite數(shù)據(jù)庫(kù)
- iOS App使用SQLite之句柄的定義及數(shù)據(jù)庫(kù)的基本操作
相關(guān)文章
ios 實(shí)現(xiàn)倒計(jì)時(shí)的兩種方式
這篇文章主要介紹了ios實(shí)現(xiàn)倒計(jì)時(shí)的兩種方式,第一種方式使用NSTimer來(lái)實(shí)現(xiàn),第二種方式使用GCD來(lái)實(shí)現(xiàn)。具體內(nèi)容詳情大家參考下本文2017-01-01
如何通過(guò)Objective-C的枚舉學(xué)習(xí)iOS中位操作.md詳解
這篇文章主要給大家介紹了關(guān)于如何通過(guò)Objective-C的枚舉學(xué)習(xí)iOS中位操作.md的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)各位iOS開(kāi)發(fā)者們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03
iOS sqlite對(duì)數(shù)據(jù)庫(kù)的各種操作(日常整理全)
在IOS中使用Sqlite來(lái)處理數(shù)據(jù)。如果你已經(jīng)了解了SQL,那你可以很容易的掌握SQLite數(shù)據(jù)庫(kù)的操作。本文給大家介紹iOS sqlite對(duì)數(shù)據(jù)庫(kù)的各種操作,需要的朋友參考下吧2016-03-03
iOS通過(guò)Runtime實(shí)現(xiàn)友盟統(tǒng)計(jì)的實(shí)例代碼
本篇文章主要介紹了iOS通過(guò)Runtime實(shí)現(xiàn)友盟統(tǒng)計(jì)的實(shí)例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06
iOS中實(shí)現(xiàn)圖片自適應(yīng)拉伸效果的方法
圖片拉伸在移動(dòng)開(kāi)發(fā)中特別常見(jiàn),比如常用的即時(shí)通訊應(yīng)用中的聊天氣泡就需要根據(jù)文字長(zhǎng)度對(duì)背景圖片進(jìn)行拉伸自適應(yīng)。下面這篇文章主要給大家介紹了iOS中實(shí)現(xiàn)圖片自適應(yīng)拉伸效果的方法,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-03-03
使用Xcode為iOS應(yīng)用項(xiàng)目創(chuàng)建PCH文件的方法及應(yīng)用示例
這篇文章主要介紹了使用Xcode為iOS應(yīng)用項(xiàng)目創(chuàng)建PCH文件的方法及應(yīng)用示例,PCH文件可以保留應(yīng)用的很多的基礎(chǔ)設(shè)置信息以供復(fù)用,需要的朋友可以參考下2016-03-03
IOS 代理方式實(shí)現(xiàn)實(shí)例詳解
這篇文章主要介紹了IOS 代理方式實(shí)現(xiàn)實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2016-11-11
IOS微信端confirm以及alert去掉網(wǎng)址的實(shí)例代碼
下面小編就為大家分享一篇IOS微信端confirm以及alert去掉網(wǎng)址的實(shí)例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-01-01
IOS9.0 LaunchScreen.StroyBoard自定義啟動(dòng)圖片詳解
這篇文章主要介紹了IOS9.0 LaunchScreen.StroyBoard自定義啟動(dòng)圖片詳解的相關(guān)資料,需要的朋友可以參考下2017-02-02

