//
// FMDBTestController.swift
// 微博项目
//
// Created by zhang on 16/3/13.
// Copyright © 2016年 jin. All rights reserved.
//
import UIKit
class FMDBTestController: UIViewController {
var queue:FMDatabaseQueue?
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor.whiteColor()
// 拼接文件名
let filePath = "\(NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.CachesDirectory, NSSearchPathDomainMask.UserDomainMask, true).last!)database.sqlite"
print(filePath)
self.queue = FMDatabaseQueue(path: filePath)
// Do any additional setup after loading the view.
}
@IBAction func createTable(sender: AnyObject) {
let sql = "create table if not exists t_user (id integer primary key autoincrement,name text,phone text);"
// 创建数据库表
// 提供了一个多线程安全的数据库实例
self.queue?.inDatabase({ (database:FMDatabase!) -> Void in
let flag = database.executeUpdate(sql, withArgumentsInArray: nil)
if (flag) {
print("ok")
}else{
print("error")
}
})
}
@IBAction func insert(sender: AnyObject) {
let sql = "insert into t_user (name,phone) values (?,?)"
self.queue?.inDatabase({ (database:FMDatabase!) -> Void in
let flag = database.executeUpdate(sql, withArgumentsInArray: ["\(rand())","\(rand())"])
if (flag) {
print("ok")
}else{
print("error")
}
})
}
@IBAction func deleteTest(sender: AnyObject) {
let sql = "DELETE FROM t_user "
self.queue?.inDatabase({ (database:FMDatabase!) -> Void in
let flag = database.executeUpdate(sql, withArgumentsInArray: nil)
if (flag) {
print("ok")
}else{
print("error")
}
})
}
@IBAction func update(sender: AnyObject) {
let sql = "UPDATE t_user SET name = '2222222'"
self.queue?.inDatabase({ (database:FMDatabase!) -> Void in
let flag = database.executeUpdate(sql, withArgumentsInArray: nil)
if (flag) {
print("ok")
}else{
print("error")
}
})
}
@IBAction func selectTest(sender: AnyObject) {
let sql = "select * from t_user;"
self.queue?.inDatabase({ (database:FMDatabase!) -> Void in
let res:FMResultSet? = database.executeQuery(sql, withArgumentsInArray: nil)
var arr:NSMutableArray = NSMutableArray()
if res != nil
{
while(res!.next())
{
let dic:NSDictionary = ["name":"\((res?.intForColumn("name"))!)","phone":(res?.stringForColumn("phone"))!,"id":(res?.stringForColumn("id"))!]
arr.addObject(dic)
}
}
print(arr)
})
}
}