专业java、php、iOS、C++、网页设计、平面设计、网络营销、游戏开发、前端与移动开发培训机构
使用 SQLiteManager
建立和打开数据库
在
SQLiteManager.swift
中添加openDB
方法// 数据库句柄: COpaquePointer(含糊的指针)通常是一个结构体指针 private var db: COpaquePointer = nil /** 打开数据库 DB(DataBase) - parameter dbName: 数据库名称 */ func openDB(dbName: String) { // 获取沙盒路径 let documentPath = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true).last! as NSString // 获取数据库完整路径 let path = documentPath.stringByAppendingPathComponent(dbName) print(path) /* 参数: 1.fileName: 数据库完整路径 2.数据库句柄: 返回值: Int SQLITE_OK 表示打开数据库成功 注意: 1.如果数据库不存在,会创建数据库,再打开 2.如果存在,直接打开 */ // sqlite3_open(path.cStringUsingEncoding(NSUTF8StringEncoding)!, &db) if sqlite3_open(path, &db) != SQLITE_OK { print("打开数据库失败") return } print("打开数据库成功") }
代码小结
- 建立数据库需要给定完整的数据库路径
sqlite3_open
函数会打开数据库,如果数据库不存在,会新建一个空的数据库
,并且返回数据库指针(句柄)- 后续的所有数据库操作,都基于此
数据库句柄
进行
打开数据库
在
AppDelegate
中添加以下代码func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { SQLiteManager.sharedManager.openDB("my.db") return true }
代码小结
SQLite
数据库是直接保存在沙盒中的一个文件,只有当前应用程序可以使用- 在移动端开发时,数据库通常是以
持久式
连接方式使用的 - 所谓
持久式连接
指的是只做一次打开数据库
的操作,永远不做关闭
数据库的操作,从而可以提高数据库的访问效率