Swift - Realm数据库简单的 增-删-改-查
2016-08-22 18:55
375 查看
//
// TSMessageState.swift
// N-Students
//
// Created by 王木木 on 16/8/22.
// Copyright © 2016年 E-edu Space. All rights reserved.
//
/// 更详细内容请参考 http://www.hangge.com/blog/cache/detail_891.html
import Foundation
import RealmSwift
/** 消息免打扰
开关状态 */
class TSMessageState: Object {
// true 打开 false
关闭
dynamic
var messageState:
Bool = true
/// 用户code
dynamic
var userCode: String =
""
}
extension TSMessageState{
/*!
增加数据 &&
删除数据
*/
func setMessageType(model:Bool){
/// 创建Realm对象
let realm =
try! Realm()
/// 获取对象为 TSMessageState
的所有数据
let items = realm.objects(TSMessageState)
/// 获取当前用户code
let code =
TSUserManager.sharedInstance().user?.basic?.openId
/*!
* 如果本地有数据存在
*/
if items.count >
0 {
/// 查询语句
查询userCode
为code的 TSMessageState对象
let predicate =
NSPredicate(format:
"userCode = %@", code!)
/// 获取查询到的对象
let consumeItems = realm.objects(TSMessageState).filter(predicate)
// 在事务中删除对象
try! realm.write {
/*!
* 删除这些数据
*/
realm.delete(consumeItems)
}
}
/// 创建 TSMessageState
对象
let message =
TSMessageState()
/*!
* 给新对象赋值
*/
message.messageState = model
message.userCode = code!
//在事务中保存对象
try! realm.write {
realm.add(message)
}
}
/*!
查询数据
*/
func getMessageType()->(Bool){
let model =
TSMessageState()
let realm =
try! Realm()
let items = realm.objects(TSMessageState)
let code =
TSUserManager.sharedInstance().user?.basic?.openId
if items.count >
0 {
let predicate =
NSPredicate(format:
"userCode = %@", code!)
let consumeItems = realm.objects(TSMessageState).filter(predicate)
if consumeItems.count >
0 {
return consumeItems[0].messageState
}
}
return model.messageState
}
/*!
* 修改数据
*/
func updateSingInData(bool:Bool){
let realm =
try! Realm()
let items = realm.objects(TSMessageState)
let code =
TSUserManager.sharedInstance().user?.basic?.openId
if items.count >
0 {
let predicate =
NSPredicate(format:
"userCode = %@", code!)
let consumeItems = realm.objects(TSMessageState).filter(predicate)
if consumeItems.count >
0 {
let model = consumeItems[0]
/*!
* 在事务中更新对象属性
*/
try! realm.write {
model.messageState = bool
}
}
}
}
}
// TSMessageState.swift
// N-Students
//
// Created by 王木木 on 16/8/22.
// Copyright © 2016年 E-edu Space. All rights reserved.
//
/// 更详细内容请参考 http://www.hangge.com/blog/cache/detail_891.html
import Foundation
import RealmSwift
/** 消息免打扰
开关状态 */
class TSMessageState: Object {
// true 打开 false
关闭
dynamic
var messageState:
Bool = true
/// 用户code
dynamic
var userCode: String =
""
}
extension TSMessageState{
/*!
增加数据 &&
删除数据
*/
func setMessageType(model:Bool){
/// 创建Realm对象
let realm =
try! Realm()
/// 获取对象为 TSMessageState
的所有数据
let items = realm.objects(TSMessageState)
/// 获取当前用户code
let code =
TSUserManager.sharedInstance().user?.basic?.openId
/*!
* 如果本地有数据存在
*/
if items.count >
0 {
/// 查询语句
查询userCode
为code的 TSMessageState对象
let predicate =
NSPredicate(format:
"userCode = %@", code!)
/// 获取查询到的对象
let consumeItems = realm.objects(TSMessageState).filter(predicate)
// 在事务中删除对象
try! realm.write {
/*!
* 删除这些数据
*/
realm.delete(consumeItems)
}
}
/// 创建 TSMessageState
对象
let message =
TSMessageState()
/*!
* 给新对象赋值
*/
message.messageState = model
message.userCode = code!
//在事务中保存对象
try! realm.write {
realm.add(message)
}
}
/*!
查询数据
*/
func getMessageType()->(Bool){
let model =
TSMessageState()
let realm =
try! Realm()
let items = realm.objects(TSMessageState)
let code =
TSUserManager.sharedInstance().user?.basic?.openId
if items.count >
0 {
let predicate =
NSPredicate(format:
"userCode = %@", code!)
let consumeItems = realm.objects(TSMessageState).filter(predicate)
if consumeItems.count >
0 {
return consumeItems[0].messageState
}
}
return model.messageState
}
/*!
* 修改数据
*/
func updateSingInData(bool:Bool){
let realm =
try! Realm()
let items = realm.objects(TSMessageState)
let code =
TSUserManager.sharedInstance().user?.basic?.openId
if items.count >
0 {
let predicate =
NSPredicate(format:
"userCode = %@", code!)
let consumeItems = realm.objects(TSMessageState).filter(predicate)
if consumeItems.count >
0 {
let model = consumeItems[0]
/*!
* 在事务中更新对象属性
*/
try! realm.write {
model.messageState = bool
}
}
}
}
}
相关文章推荐
- Swift-Realm简单使用,代替Sqlite、Crodata的强大数据库
- Swift-->Realm1.0.2 数据库上手指南
- Realm 数据库的简单使用
- swift 简单实现coreData数据库增删改查和关系表
- Realm数据库的简单使用
- [Android] 好用的数据库Realm 简单使用 增删改查
- Realm数据库的简单使用
- ActiveSQLite更简单的Swift数据库方案(SQLite.swift封装)
- 简单的数据库连接工厂实现
- 一个简单而又灵活的数据库操作类
- 用C#对ADO.NET数据库完成简单操作
- 数据库的表映射到对象上真的不是那么简单啊!
- 简单的数据库连接
- 用C#对ADO.NET数据库完成简单操作
- 一个简单的,适应多种数据库之间存取操作的数据库访问层
- 最简单的数据库连接,asp连接access数据库
- 数据库访问简单实现edainfo-model(二)——简单例子
- 简单的ASP.net查询数据库脚本
- [数据库]简单SQL语句总结
- c#接简单数据库操作类