2016-08-20 113 views
-2

在我的IOS應用程序中,我使用FMDB數據庫來存儲數據。我在檢索數據時遇到問題。實際上,在我的應用程序的最後一頁,當我點擊「sendtowatch」按鈕時,應該保存數據,同時應該檢索數據,以便數據可以顯示在我的手錶應用程序中。我運行的應用程序的截圖低於。我下面的源代碼是關於從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) 

     } 
    } 


} 

} 

回答

0

也許這將幫助你

讓select_query =「SELECT * FROM TICKET WHERE圖像=」 {大小400,400}方向0比例1.000000'AND ticket_category ='巴士'AND ticket_type ='sssss'AND date ='2016年8月20日'AND time = '12:14 PM'「