移动端专用数据库Realm介绍

目前我们一个Swift iOS App使用了Realm做数据存储,放弃了CoreData和Sqlite。
     项目地址 https://github.com/realm

Realm是一个直接运行在手机,平板,可穿戴设备的移动端数据库,Sqlite和ORM框架的替代品。有Android,iOS和React native js版本。realm-cocoa项目包括           iOS/OS X版本的Objc和Swift实现。

特性:

  • Mobile-first: Realm是第一个直接针对运行在手机,平板,可穿戴设备设计和开发的数据库
  • Simple: 数据直接暴露成类对象,通过代码查询,避免了ORM映射的 维护和性能问题。另外,Realm努力保持API只包括4个基础类(Object, Array, Results and Realms)和一个工具类(Migrations),用户可以凭直觉使用,在几分钟内在App中用上realm
  • Modern: Realm支持关联,泛型,向量化,甚至支持Swift。
  • Fast:Realm在数据库基本操作上比原生Sqlite还要快,同时又保持更丰富的功能特性集。

realm-browser-osx项目是一个Mac上的Realm数据库客户端工具,支持查看和修改realm数据库文件,功能类似sqliteAdmin。

需要条件

iOS 8 or later, OS X 10.9 or later & WatchKit,不支持iOS7.0,原因是iOS7.0不支持第三方动态库,而包含了swift代码又不能编译成静态库(但是objc版本realm支持iOS7.0)。Xcode 7.0 以上版本,建议Swift2.x以上版本。

示例代码

import RealmSwift

// Dog model
class Dog: Object {
    dynamic var name = ""
    dynamic var owner: Person? // Properties can be optional
}

// Person model
class Person: Object {
    dynamic var name = ""
    dynamic var birthdate = NSDate(timeIntervalSince1970: 1)
    let dogs = List<Dog>()
}
时间: 2024-08-01 22:44:09

移动端专用数据库Realm介绍的相关文章

淘宝数据库负责人介绍淘宝数据库设计

江枫先给我们介绍一下自己,和你在这次淘宝"双十一"事件中所扮演的角色? 大家好,我是淘宝技术保障部的江枫.目前主要负责数据库的稳定性这一块.双十一这一天,我主要是负责协调整个数据库团队和保障整个数据库在"双十一"过程中的稳定性不受任何影响. 那给我们详细的谈一下淘宝网现在整个数据库整体的一个架构,包括它硬件的组成.  淘宝的数据库发展到今天,已经是一个非常复杂的系统.我大概算了一下,淘宝目前所有的数据库服务器加起来可能已经超过800台.那在这么一个规模底下,淘宝的数

【试水CAS-4.0.3】第04节_CAS服务端通过数据库认证用户

本文源码下载:http://download.csdn.net/detail/jadyer/8911139 /** * @see ------------------------------------------------------------------------------------------------------------------------ * @see CAS服务端通过数据库认证用户 * @see 实现方式有两种,一是自己写数据库获取用户名密码再认证的类,一是借助C

SQL Server和Oracle数据库索引介绍

SQL Server和Oracle数据库索引介绍 1 SQL Server中的索引 索引是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行的速度.索引包含由表或视图中的一列或多列生成的键.这些键存储在一个结构(B 树)中,使 SQL Server 可以快速有效地查找与键值关联的行. 表或视图可以包含以下类型的索引: 聚集索引 聚集索引根据数据行的键值在表或视图中排序和存储这些数据行.索引定义中包含聚集索引列.每个表只能有一个聚集索引,因为数据行本身只能按一个顺序排序. 只有当表包含聚集索引

数据库的介绍和类型

一. 什么是数据库? 简单的说,数据库(英文Dtabase)就是一个存放数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来组织.存储的.我们可以通过数据库提供的多种方法来管理数据库里的数据更简单的形象理解,数据库和我们生活中存放杂物的仓库性质一样,区别只是存放的东西不同. 二.数据库的种类有哪些? 早期比较流行的数据库模型有三种,分别为:层次式数据库.网络式数据库和关系型数据库. 而在当今的互联网中,最常用的数据库模型主要是两种,即关系型数据库和非关系型数据

数据库索引介绍及使用【转】

数据库索引介绍及使用 一.索引的概念 索引就是加快检索表中数据的方法.数据库的索引类似于书籍的索引.在书籍中,索引允许用户不必翻阅完整个书就能迅速地找到所需要的信息.在数据库中,索引也允许数据库程序迅速地找到表中的数据,而不必扫描整个数据库. 二.索引的特点 1.索引可以加快数据库的检索速度 2.索引降低了数据库插入.修改.删除等维护任务的速度 3.索引创建在表上,不能创建在视图上 4.索引既可以直接创建,也可以间接创建 5.可以在优化隐藏中,使用索引 6.使用查询处理器执行SQL语句,在一个表

T端带数据库查询的假人系统

commit 87f8ac21ca6d2d086984dfc39b1869dc51ecd36f Author: Vitasic <[email protected]> Date: Tue Jun 26 15:43:38 2012 +0400 Add Fake Players diff --git a/src/server/game/Handlers/ChatHandler.cpp b/src/server/game/Handlers/ChatHandler.cpp index 966eae5.

Postgres数据库基本介绍

最近一直在做一个和PostgreSQL数据库相关的项目,把自己在这个过程中学习的知识记录下来.关于PostgreSQL数据库网上已经有太多的相关介绍了,为了博文的系统性还是先看一下维基百科对PostgreSQL数据库的介绍吧. PostgreSQL是自由的对象-关系型数据库服务器(数据库管理系统),在灵活的BSD-风格许可证下发行.它在其他开放源代码数据库系统(比如MySQL和Firebird),和专有系统比如Oracle.Sybase.IBM的DB2和Microsoft SQL Server之

MYSQL数据库事务介绍

一.数据库事务介绍 简单地说,事务就是指逻辑上的一组SQL语句操作,组成这组操作的各个SQL语句, 执行时要么全成功要么全失败. 列如:小明给小红转账5块钱,流程如下: 1.从小明银行卡取出5元,计算式money-5 2.把上面5块钱打入小红的账号上,小红收到5块,money+5 上述转账的过程,对应的sql语句为: update  xiaoming_account set money=money-5 where name='xiaoming'; update  xiaohong_account

在使用xutils时post请求传递中文到服务端Mysql数据库出现中文乱码。

            在使用xutils时post请求传递中文到服务端Mysql数据库出现中文乱码. 这个问题困惑了我很久,也走了很多弯路.经过不断的探究终于找到了问题的解决方案. 第一:查看自己的mysql的编码.cmd->mysql –uroot –p -->输入自己的mysql的密码->输入 SHOWVARIABLES LIKE 'character%';(如果装mysql时默认安装的话,会出现很多latin1,而不是我下面的全部utf-8,这是因为mysql默认的编码是lati