-2
私のIOSアプリケーションでは、FMDBデータベースを使用してデータを格納しています。データの取得中に問題が発生しています。実際に私のアプリの最後のページで、私は "sendtowatch"ボタンをクリックすると、データを保存すると同時にデータを私の時計アプリに表示することができるように取得する必要があります。私のランニングアプリのスクリーンショットは、以下の.MYのソースコードの下にあるに関する問題FMDBデータベースからデータを取得する
screenshot ofmy running app screenshot
@IBAction func sendToWatch(sender: AnyObject) {
let ticketDB = FMDatabase(path: databasePath as String)
if ticketDB.open()
{
let insertSQL = "INSERT INTO TICKET (image, ticket_category, ticket_type, date, time) VALUES ('\(display_image.image!)', '\(ticket_category.text!)', '\(ticket_type_name.text!)', '\(ticket_date.text!)', '\(ticket_time.text!)')"
let result = ticketDB.executeUpdate(insertSQL,withArgumentsInArray: nil)
if !result
{
print("Error: \(ticketDB.lastErrorMessage())")
} else
{
let alt = PMAlertController(title: "Success!", description: "Your data is saved to Database!", image: UIImage(named: ""), style: .Alert)
alt.addAction(PMAlertAction(title: "OK!", style: .Default, action: { (ACTION) -> Void in
let ticketDB = FMDatabase(path: self.databasePath as String)
if ticketDB.open()
{
let querySQL = "SELECT * FROM TICKET"
let result: FMResultSet? = ticketDB.executeQuery(querySQL, withArgumentsInArray: nil)
if let result = result
{
self.ticketDataArray = NSMutableArray()
while result.next()
{
let ticketInfo = NSMutableDictionary()
ticketInfo.setObject(result.stringForColumn("image"), forKey: "image")
ticketInfo.setObject(result.stringForColumn("ticket_category"), forKey: "ticket_category")
ticketInfo.setObject(result.stringForColumn("ticket_type"), forKey: "ticket_type")
ticketInfo.setObject(result.stringForColumn("date"), forKey: "date")
ticketInfo.setObject(result.stringForColumn("time"), forKey: "time")
self.ticketDataArray.addObject(ticketInfo)
}
}else{
print("Error: \(ticketDB.lastErrorMessage())")
}
ticketDB.close()
}
}))
self.presentViewController(alt, animated: true, completion: nil)
print(databasePath)
}
}
}
}