iOS开发——数据持久化Swift篇&(四)CoreData
CoreData
import CoreData
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
//获取管理的数据上下文对象
// let app = UIApplication.sharedApplication().delegate as AppDelegate
//2015年5月2号修改
let app = UIApplication.sharedApplication().delegate as! AppDelegate
let context = app.managedObjectContext!
var error:NSError?
//创建User对象
// var oneUser = NSEntityDescription.insertNewObjectForEntityForName("User", inManagedObjectContext: context) as User
//2015年5月2号修改
var oneUser = NSEntityDescription.insertNewObjectForEntityForName("User", inManagedObjectContext: context) as! User
//对象赋值
oneUser.userID =
oneUser.userEmail = "18500@126.com"
oneUser.userPawd = "
//保存
if(!context.save(&error))
{
println("不能保存:\(error?.localizedDescription)");
}
//------- 查询
//声明数据的请求
var fetchRequest:NSFetchRequest = NSFetchRequest()
fetchRequest.fetchLimit = // 限定查询结果的数量
fetchRequest.fetchOffset = // 查询的偏移量
//声明一个实体结构
var entity:NSEntityDescription? = NSEntityDescription.entityForName("User", inManagedObjectContext: context)
//设置数据请求的实体结构
fetchRequest.entity = entity
//设置查询条件
let predicate = NSPredicate(format: "userID = '2'", "")
fetchRequest.predicate = predicate
//查询操作
var fetchedObjects:[AnyObject]? = context.executeFetchRequest(fetchRequest, error: &error)
//遍历查询的结果
// for info:User in fetchedObjects as [User] {
//2015年5月2号修改
for info:User in fetchedObjects as! [User] {
println("userID = \(info.userID)")
println("userEmail = \(info.userEmail)")
println("userPawd = \(info.userPawd)")
println("++++++++++++++++++++++++++++++++++++++")
}
//修改
//遍历查询出来的所有对象
// for info:User in fetchedObjects as [User] {
//2015年5月2号修改
for info:User in fetchedObjects as! [User] {
println("userID = \(info.userID)")
println("userEmail = \(info.userEmail)")
println("userPawd = \(info.userPawd)")
println("++++++++++++++++++++++++++++++++++++++")
//修改邮箱
info.userEmail = "18500_junfei521@126.com"
//重新保存
if(!context.save(&error))
{
println("不能保存:\(error?.localizedDescription)");
}
}
//删除对象
// for info:User in fetchedObjects as [User]
//2015年5月2号修改
for info:User in fetchedObjects as! [User]
{
context.deleteObject(info)
}
//重新保存-更新到数据库
if(!context.save(&error))
{
println("删除后保存:\(error?.localizedDescription)");
}
//获取路径
let homeDirectory = NSHomeDirectory()
println(homeDirectory)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
iOS开发——数据持久化Swift篇&(四)CoreData的更多相关文章
- iOS开发——数据持久化Swift篇&使用Core Data进行数据持久化存储
使用Core Data进行数据持久化存储 一,Core Data介绍 1,Core Data是iOS5之后才出现的一个数据持久化存储框架,它提供了对象-关系映射(ORM)的功能,即能够将对象转化成 ...
- iOS开发——数据持久化Swift篇&(一)NSUserDefault
NSUserDefault //******************** 5.1 NSUserDefault和对象归档 func useNSUserDefault() { //通过单利来创建一个NSU ...
- iOS开发——数据持久化Swift篇&文件目录路径获取(Home目录,文档目录,缓存目录等)
文件目录路径获取(Home目录,文档目录,缓存目录等) iOS应用程序只能在自己的目录下进行文件的操作,不可以访问其他的存储空间,此区域被称为沙盒.下面介绍常用的程序文件夹目录: 1,Home ...
- iOS开发——数据持久化Swift篇&iCloud云存储
iCloud云存储 import UIKit class ViewController: UIViewController { override func viewDidLoad() { super. ...
- iOS开发——数据持久化Swift篇&SettingBundle
SettingBundle import UIKit class ViewController: UIViewController { var userDefault = NSUserDefaults ...
- iOS开发——数据持久化Swift篇&(三)SQLite3
SQLite3 使用 //******************** 5.3 SQLite3存储和读取数据 func use_SQLite3() { //声明一个Documents下的路径 var db ...
- iOS开发——数据持久化Swift篇&(二)沙盒文件
沙盒文件 //******************** 5.2 文件操作 func use_FileOperations() { //1.获取程序的Home目录 let homeDirectory = ...
- iOS开发——数据持久化Swift篇&通用文件存储
通用文件存储 import UIKit class ViewController: UIViewController { @IBOutlet weak var textField: UITextFie ...
- iOS开发——数据持久化Swift篇&模型对象归档
模型对象归档 import UIKit class ViewController: UIViewController { @IBOutlet weak var textField: UITextFie ...
随机推荐
- C++标准转换运算符 --四种
具体归纳如下: reinterpret_cast 函数将一个类型的指针转换为另一个类型的指针. 这种转换不用修改指针变量值存放格式(不改变指针变量值),只需在编译时重新解释指针的类型就可做到.rein ...
- 项目常用jquery/easyui函数小结
#项目常用jquery/easyui函数小结 ##背景 项目中经常需要使用到一些功能,封装.重构.整理后形成代码沉淀,在此进行分享 ##代码 ```javascript /** * @author g ...
- Hadoop学习记录(7)|Eclipse远程调试Hadoop
1.创建Hadoop项目 2.创建包.类 这里使用hdfs.WordCount为例 3.编写自定Mapper和Reducer程序 MyMapper类 static class MyMapper ext ...
- 【数据结构与算法分析——C语言描述】第一章总结 引论
这一章主要复习了一些数学知识,像指数.对数.模运算.级数公式:还有2种证明方法,归纳假设法和反证法.所幸以前学过,重新拾捡起来也比较轻松. 简要地复习了递归,提出了编写递归例程的四条基本法则: 基准情 ...
- Web Api 2 怎么支持 Session
Add protected void Application_PostAuthorizeRequest() { System.Web.HttpContext.Current.SetSessionSta ...
- phonegap 新窗口 inappbrowser插件
在Phonegap 开发过程中,需要调用外部网页,又要跳出白名单安全限制,可以使用 inappbrowser插件. http://plugins.cordova.io/#/package/org.ap ...
- accordion data-options iconCls
<div id="aa" class="easyui-accordion" style="width:500px;height:300px;&q ...
- Linux下Python获取IP地址
<lnmp一键安装包>中需要获取ip地址,有2种情况:如果服务器只有私网地址没有公网地址,这个时候获取的IP(即私网地址)不能用来判断服务器的位置,于是取其网关地址用来判断服务器在国内还是 ...
- Ubuntu14.04上安装pip的方法
在Ubuntu14.04上,建议通过下面的方法安装,这是一种通用的方法,也适用于Windows,当然在Windows下 手动下载下来就行了 wget https://bootstrap.pypa.io ...
- DataTrigger的几个用法
1.用在textbox等输入控件上,验证输入是否合法. <Window.Resources> <Style TargetType="TextBox"> &l ...