Tag: 数据库

无法将数据从CoreData加载到tableview中

我正在学习如何使用CoreData。 我有一个添加button,这只是一个文本字段和保存button视图的tableView。 按下button时,文本字段中的string保存在CoreData数据库中: @IBOutlet weak var name: UITextField! @IBAction func onSave(sender: UIBarButtonItem) { saveItem(name.text!) self.dismissViewControllerAnimated(true, completion: nil) } private func saveItem(itemName: String) { let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate let managedContext = appDelegate.managedObjectContext let entity = NSEntityDescription.entityForName("Item", inManagedObjectContext: managedContext) let item = NSManagedObject(entity: entity!, insertIntoManagedObjectContext: managedContext) item.setPrimitiveValue(itemName, forKey: "name") do { try managedContext.save() listItems.append(item) }catch […]

我的SQL数据库在数据库forms不工作的实际设备,但在模拟器中工作正常

在我的应用程序中,我正在读取,写入和删除sqlite数据库(以dbforms),它在模拟器中工作正常,但在实际设备中不工作(给出错误: No such table found )。我努力寻找解决scheme,但找不到一个或可能是我误解了一些东西。 我的数据库是在 / users / My Name / library / developer / Core simulator / devices / devicen-id / data / application / app-id / documents / My database。 – (NSString *) getWritableDBPath { NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory , NSUserDomainMask, YES); NSString *documentsDir = [paths objectAtIndex:0]; return [documentsDir stringByAppendingPathComponent:mydaatabase]; } […]

Firebase快照顺序错误

我尝试将我在firebase中存储的post加载到我的tableView中。 我使用.childAdded函数按发布顺序(首先到最后)获取post。 首先它似乎工作,但现在它不再工作,我不知道为什么。 所以我给post添加了一个时间戳,并使用queryOrderedByChild(“timestamp”)。 依然错误的顺序! 这是我的代码: posts.removeAll() let ref = FIRDatabase.database().reference() ref.child("Posts").queryOrderedByChild("timestamp").observeEventType(.ChildAdded, withBlock: { (snapshot:FIRDataSnapshot) in print(snapshot.value!["timestamp"] as! Int) if snapshot.value == nil { return } let post = Post() post.title = snapshot.value!["Title"] as? String post.postType = snapshot.value!["postType"] as? Int post.postDescription = snapshot.value!["Description"] as? String if post.postType == 2 { post.imageAURL = snapshot.value!["imageAURL"] as? String […]

如何保存来自查询的数据,string数组,Firebase iOS?

我想做一个用户查询,删除每个的名称,并将名称保存在一个数组中,然后将其显示在一个表中。 问题是我不能让他们在和解中,我该如何解决? 因此,我使查询提取用户的名称: var users = [String]() let ref = Firebase(url:"https:mydatabase/users") ref.queryOrderedByChild("name").observeEventType(.ChildAdded, withBlock: { snapshot in if let username = snapshot.value["name"] as! String { self.users.append(username) print("username") } }) 所以我有我的用户表在firebase 用户名var确实有名字,但是当添加var的内容结算时,不会在执行应用程序时抛出任何错误。

如何使用JSON来处理关系型数据 – 最好只重复数据?

我想创buildJSON作为汽车的小型数据库。 如果我使用MySQL,我会创build一个Maker表,以免重复每一辆车的制造商和制造商属性。 在JSON中这样做的最好方法是什么? 例如,如果我有制造商的以下属性: “名称”:“福特”,“url”:“ford.com”,“成立”:“有些年份”等 然后是汽车名单“名字”:“Mustang”,“第一年”:“有些年份”,“制造商”:“福特”“制造商URL”:“ford.com” 我不想重复每个福特汽车的制造商属性。 我应该有两个JSON文件,并通过制造商ID或独特的制造商名称链接在一起吗? 或者我应该让制造商的属性重复每个福特汽车? 我特意在Objective-C / iOS中做这个,所以我可以在iPhone上使用这些数据。 我将把JSON放到一个数组中进行parsing和查看。

SQLite通过select语句改变表的结果

我试图在mozilla sqlite附加组件中执行这个语句 alter table (select tbl_name from sqlite_master where rowid=1) add GUID varchar 但是这会导致错误: SQLiteManager:可能的SQL语法错误:alter table(从sqlite_master where rowid = 1中selecttbl_name)添加GUID varchar [near“(”:syntax error]exception名称:NS_ERROR_FAILUREexception消息:组件返回失败代码:0x80004005(NS_ERROR_FAILURE)[mozIStorageConnection。的createStatement] 声明:从sqlite_masterselecttbl_name其中rowid = 1正常工作

iOS:从JSON更新核心数据库

在我的应用程序中,我以这种方式存储来自JSON文件的数据(这是一个身份的例子) NSManagedObjectContext *context = [self managedObjectContext]; for (id element in array){ NSLog(@"element:%@", element); Str *str = [NSEntityDescription insertNewObjectForEntityForName:@"Str" inManagedObjectContext:context]; Id_loc *loc = [NSEntityDescription insertNewObjectForEntityForName:@"Id_loc" inManagedObjectContext:context]; loc.id_loc = @"id_1"; [str addLocObject:loc]; } 问题是,我从networking服务每天parsing这个JSON; 所以每天都可以改变其“Str”身份(我的JSON的一个对象)的数据和数量。 问题是,有什么更好的解决scheme来更新我的核心数据库? 我有两种可能性: 1-更新我的DB与NSFetchRequest,检查是否存在一个元素,并更新它; 如果它不存在,我应该创build它。 最后,如果一个对象不在JSON中,但它在我的核心数据库中,我应该删除它,这是一个复杂的一系列控件。 2-删除所有的核心数据分贝,并用新的JSON文件再次填充。 在你看来,有什么更好的select? 我说你在我的应用程序中,我只能读取我的分贝,我不需要删除或修改它,当我使用它。

iphones mac地址是静态的吗? 寻找一种方法来确定哪个用户在线

我正在构build一个不需要login系统的应用程序。 我仍然希望能够知道哪些用户正在向我的在线数据库发送信息。 据我所知,UDID不允许上传到任何服务器,所以这是不可能的。 我可以使用这个iphones mac地址吗? 如果它是dynamic的,它会不时变化,我将无法跟踪它。

iOS / Swift:viewDillLoad和viewWillAppear之间的函数我应该查询一个数据库?

在我的应用程序,由Swift和XCode 6开发,我必须查询数据库,并根据该答案,然后我会修改和显示一些UI小部件,在我的情况下,这是三个彩色button,我必须改变他们的文字它由一个数字组成。 这些button表示分配给用户的任务数量,根据任务的优先级,它们具有不同的颜色。 那么,我应该在viewDidLoad()函数中查询数据库,然后根据回答在viewWillAppear中更改button的文本? 是对的吗?

Phonegap等待数据库事务完成

我正在创build一个将在第一次运行时执行不同的Phonegap应用程序。 我正在检测第一次运行的方式是通过查看其中一个数据库表存在。 正如你可能从下面的代码中可以看出,我正在检查(可能)表示表已经存在的错误,从而certificate这不是应用程序的第一次运行。 function databaseExists(){ var exists; database.transaction(function(tx){ tx.executeSql('CREATE TABLE GLOBAL (uid, property, value)'); }, function(err){ exists = true; }, function(){ exists = false; }); return exists; } 然而,我的问题是,JavaScript代码的asynchronous执行意味着函数在成功(或错误)函数设置它的值之前返回其值。 这个函数在应用程序的初始化阶段被调用: if (databaseExists()){ // Do Something } 因此必须返回值而不是执行交易成功callback中的函数。 有没有办法强制执行,直到数据库事务完成或通过database.transaction对象返回值? 在此先感谢乔恩