Elixir Ecto: 在Postgres中使用UUID类型的主键

2017-03-22
阅读 2 分钟
6.7k
使用UUID作为主键的目的 降低Serial类型这种自增ID线性特征, UUID作为随机生成的字符串, 让ID更离散, 增强系统的反爬虫能力(至少避免通过ID的线性增加来爬取内容这种最简单的爬取方式)

Elixir Ecto: 使用Geo库操作空间数据(地理坐标)

2016-10-16
阅读 2 分钟
4.3k
简介 数据格式 Abbr Fullname Description WKT Well Known Text 空间数据的文本标识 WKB Well Known Binary 空间数据的二进制标识 GeoJSON GeoJSON 基于Javascript对象表示法的地理空间信息数据交换格式GeoJSON Elixir 的 Geo 库提供了上述三种格式的相互转换函数. 配置 添加依赖 {代码...} 配置扩展 {代码...} 创建/删...

Elixir Ecto: 在Postgresql中插入二进制数据

2016-07-30
阅读 2 分钟
4.5k
首先我们要知道 Postgresql 中唯一一种二进制数据的类型为 bytea, 表示字节数组或字节序列. 对应于Oracle和MySQL中的 blob.

Elixir Ecto: PostgreSQL大自增长主键的设置

2016-07-02
阅读 2 分钟
3k
要解决的问题 数据库中存储的行数超过了 serial 类型所能容纳的数量, 因此需要采用 bigserial 类型的整数作为主键serial 的取值范围为: 1 到 2147483647bigserial 的取值范围为: 1 到 9223372036854775807

Elixir Ecto: 模型的嵌入(Embed)

2016-04-30
阅读 5 分钟
4.1k
Postgres 9.4 及其以上版本可以存储类似 arrays, json, jsonb 这样的非结构化数据. Ecto 作为一个 Elixir 的数据封装器, 提供了这些非结构话的数据到 Elixir 原生数据类型的序列化和反序列化. 嵌入的记录具有所有常规模型所具有的东西, 比如结构化的字段, 生命周期回调, 变更集. 下面研究如何把结构嵌入到 Ecto 模型当中.