添加
char* update = "INSERT INTO MULTIFAVOR (FAVORID , NAME ,WNDMOD,CURRENTPAGE) VALUES(?,?,?,?); ";
sqlite3_stmt *statement2;
if (sqlite3_prepare_v2(database, update , -1, &statement2, nil) == SQLITE_OK)
{
sqlite3_bind_int(statement2,1, pMultiFavor->m_nFavorID);
sqlite3_bind_text(statement2,2, pMultiFavor->m_szName, -1,NULL);
sqlite3_bind_int(statement2, 3, pMultiFavor->m_nWndMod);
sqlite3_bind_int(statement2, 4, pMultiFavor->m_nCurrentPage);
}
修改
NSString *update = [NSStringstringWithFormat:@"UPDATE MULTIFAVOR SET NAME = '%@' WHERE FAVORID = %d",[NSStringstringWithUTF8String: pMultiFavor->m_szName],pMultiFavor->m_nFavorID];
删除
NSString* update =[NSStringstringWithFormat:@"DELETE FROM MULTIFAVOR WHERE FAVORID = %d", pMultiFavor->m_nFavorID];
数据库升级添加新字段
//添加一个字段表示该通道是否被收藏,一个字段,纪录通道号是否被选中,一个字段表示该通道的码流,主码流或者辅码流
createSQL = @"CREATE TABLE IF NOT EXISTS CHANNELS (ID INTEGER PRIMARY KEY, DEVICEID INTEGER, NAME TEXT, CHANNELID INTEGER , FAVOR INTEGER, SELECTED INTEGER, STREAMTYPE INTEGER);";
if (sqlite3_exec(database, [createSQL UTF8String], NULL, NULL, &errorMsg) !=SQLITE_OK)
{
sqlite3_close(database);
NSAssert(0,@"Error creating table:CHANNELS");
}
char* colQuery = "SELECT FAVOR FROM CHANNELS";//是否能查到新增字段,查不到说明要升级,查到了说明是新安装软件
sqlite3_stmt *colQueryStatement;
if (sqlite3_prepare_v2(database, colQuery, -1, &colQueryStatement, nil) == SQLITE_OK)
{
sqlite3_finalize(colQueryStatement);
}
else
{
char* addCol = "ALTER TABLE CHANNELS ADD FAVOR INTEGER SELECTED INTEGER STREAMTYPE INTEGER";//添加多个字段的sql语句
if (sqlite3_exec(database, addCol, NULL, NULL, &errorMsg) !=SQLITE_OK)
{
sqlite3_close(database);
NSAssert(0,@"Error creating table:CHANNELS");
}
}