数据库介绍
type
status
date
slug
summary
tags
category
icon
password
数据库由内容块或者非内容块数据组成,并以不同视图呈现,比如表格视图和看板视图(看板视图还在开发中)。
数据库可以用来干嘛?
主要用途是对信息进行汇总,比如可以做一个影视库。
插入数据库块
在文档中插入数据库:按
/
键,然后输入 sjk
或 /数据库
,回车。默认视图即表格视图数据库块的结构如上图,表格的第一列是主键列,主键既可以是文本,也可以是块引用,在主键单元格内双击
[
键就能对块进行引用。
数据库列类型
数据库的列类型有:
- 文本
- 数字
- 单选
- 多选
- 日期(和时间)
- 创建时间。当前行的创建时间。
- 更新时间。当前行的更新时间。
- 资源。可以插入各种文件
- 勾选框
- 链接
- 邮箱
- 电话
- 关联
- 汇总
- 模板
前面的类型都比较好理解,关联、汇总、模板算是进阶的列类型。
表格视图
- 通过
/数据库
创建,默认视图即表格视图
- 添加不同类型的属性
- 添加行
- 非内容块:直接在表格中添加的行,不绑定到任何内容块
- 内容块:通过拖拽到表格添加的行,或者通过块标菜单
添加到数据库
添加的行
- 按需设置过滤和排序
- 同一个数据库可以添加多个视图,所有视图共享相同的数据,但过滤和排序设置相互独立
关联列与汇总列
关联列是用来在两个数据库间建立联系的,关联列关联的是另一个数据库的主键。
关联列相较于文本列的好处在于:
- 可以在两个数据库间建立联系,数据库 A 修改后,数据库 B 中的相关列也会同步修改。
- 可以使用汇总列对所关联的数据库信息进行汇总。
汇总列是与关联列配套使用的,举个栗子,前文的电影数据库的导演、演员列关联了人员数据库的主键(由于是双向关联,所以自动在人员数据库生成了电影导演和电影演员列),在人员数据库中增加一个汇总列,则可以用汇总列在人员数据库中对电影数据库中的信息进行汇总,比如汇总当前人员担任导演的电影总票房。
数据库的保存与显示
数据库的数据在
工作空间\data\storage\av
文件夹下以 json 格式保存。av, attribute view, 属性视图。数据库功能最早是叫属性视图,后来随着功能的变化,改叫数据库了。
上图是帮助文档中的一个数据库,在 av 文件夹中的 json 文件内容为:
我们在文档中插入一个数据库块,实际上只是引用了这个数据库的 ID,数据并没有保存在这个文档的.sy 文件中,上图数据库块实际内容为:
所以我们复制、粘贴数据库块的时候得到的是一个镜像数据库,新旧数据库块均引用了同一个数据库 json 文件,操作不同的镜像数据库块实际上是在操作同一个 json 文件,所以数据会在镜像数据库块中同步。数据库的视图配置也是保存在 json 文件中的,所以镜像数据库会拥有一样的视图。
如果说数据库是一座房子,视图就是房子的窗户,透过不同的窗户可以看到不同的房间、不同的内容。目前数据库块已经能够通过 ial 属性指定视图 ID。
我们可以总结:
- 数据库:实质是
工作空间\data\storage\av
文件夹下某个 json 文件。
- 数据库块:编辑器中用来显示、编辑数据库的块,实际是对数据库的引用,并不包含数据库内容。
- 镜像数据库:引用同个数据库的多个数据库块互为镜像数据库。
经测试,删除所有数据库块,数据库的 json 文件也不会被删除,数据库并不会因为删除数据库块而丢失。后续有需要的话可以手动引用数据库。
数据库的深度复制
从上个章节可以知道,直接复制数据库块只会得到镜像数据库,并不会得到数据库的副本。
要对数据库进行深度复制,需要使用块标菜单中的 复制 → 复制为完整副本 功能,如果没有此功能,需要升级一下思源笔记。
得到完整副本后,将其剪切、粘贴到需要的位置即可。
数据库与块
数据库的主键可以是块,在主键单元格内双击
[
键就能对块进行引用。数据库的属性会在块的属性面板—数据库页签中显示,可以在这个页签中对数据库进行修改。点击页面上的数据库名称后,会显示引用该数据库的数据库块
https://ld246.com/article/1708493218325 - (作者:qiancang)
上一篇
在内容块中遨游
下一篇
数据库模板
Loading...