1.RealmObject自带线程保护功能,只能在创建它的线程中访问,在子线程中不能访问。
也就是说,如果你在主线程中new了一个RealmObject对象 user,那么在子线程中是访问不了user对象的。
要想在子线程中访问,必须先将user存入Ream中,然后在子线程中query出来。
2.如果Realm关闭,所有查询得到的RealmObject都不能使用了。
如果想在子线程中去查询数据,然后在主线程中使用是无法做到的。所以Realm提供的异步查询就很重要了...
3.如果想在Realm.close()之后继续 *** 作查询得到的对象,只能复制一份数据传出来。
为防止Realm忘记关闭,个人喜欢将Realm的开启和关闭封装在一个函数中。
但是realm Colse掉之后,query得到对象就不能访问了,所以只能复制一份数据传出来。
这个比较坑,Realm开发者是为了它的一个特色功能Auto-Update,即自动更新查询到的数据,
特意让查询得到的数据与数据库中的数据保持了同步,所以Realm一关,外面的数据也用不了。
而且,这个Auto-update暂时还无法关闭,stackOverFlow上有说以后可能会提供关闭这个功能的方法。
如果你的RealmObject非常复杂,要copy一份数据将会很麻烦...
而且这还不是最坑的,最坑的是下面这条。
4.如果直接修改或删除query得到的数据,必须在transaction中完成...
也就是说,你根本不能把query返回的对象,当成普通对象去赋值或删除,如果想要直接 *** 作...ok,把对象copy一份传出来
首先,的删除数据库某一列的值分几种情况:不删除字段,只更新其中的内容
在数据库中其实叫做更新(update)
语句如下:
update 表 set 字段=null
2、删除字段
alter table 表 drop column 字段
1、首先在 SQL Server 2008中选择单击Microsoft SQL Server 2008 Management Studio,会出现一个窗口。2、在服务器名称中选择本机的服务器名字。然后单击【连接】按钮。就进入Microsoft SQL Server 2008 Management Studio。3、右键单击【数据库】,选择【新建数据库】,会出来一个窗口,在这个窗口里可以输入你要建的数据库的名称,同时也可以修改数据库的文件类型。4、数据库的名称和类型都弄好后,点击下方的【确定】 按钮。数据库就建立了。5、要是想删除自己不想要的数据库也很简单。鼠标右键点击自己不想要的数据库,然后选择【删除】 ,那么该数据库就删除了。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)