思源笔记数据库的主键不知道填什么了,让它空着可以吗?

微信截图 20240813150839.png

用数据库是因为表格不能排序、搜索、统计,但是它的主键实在不知道填什么了,既不能自动填写又不能整列删掉,空着总感觉有点怪怪的 😓️

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    23177 引用 • 93451 回帖
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    8544 引用 • 38982 回帖 • 149 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 没辙,空着吧

  • wilsons 5 评论

    主键放有意义的列不就行了,比如完成日期等或者序号啥的

    这样更麻烦了,感觉不如直接空着
    JeffreyChen
    @JeffreyChen 不麻烦,把有用信息放到主键里不是一样吗
    wilsons
    @wilsons 填日期用日期列更方便,点两下就行,还有筛选功能;填序号又没什么用,改起来还麻烦
    JeffreyChen
    @JeffreyChen 哦哦,这个主键建议应该支持隐形主键,用户没主动添加主键就隐形主键,感觉这样更合理
    wilsons
    @wilsons 隐藏主键被否了,有需要的话可以再提一提:Issue #10882 · siyuan-note/siyuan
    JeffreyChen
  • 要不楼主完整截一下图,看看数据库里有什么信息是可以填到主键里的

  • shellingford

    我也碰到过这个问题,当把它作为一个纯数据库使用的时候,是没有一个有业务意义的主键的

  • wilsons 1

    隐藏主键被否了,有需要的话可以再提一提:Issue #10882 · siyuan-note/siyuan

    @JeffreyChen 辛苦了,原来如此。

    不过嘛,其实这个也没那么重要了,纠结的朋友可以用下面的 css 隐藏下

    /* 功能:隐藏指定的数据库列(包括主键列) */
    /* 注意nth-child(1)是控制柄,别用这个,从2开始是第1列,根据自己的主键所在的列进行隐藏 */
    /* 但,footer那里,即最底部的计算框由于没有控制柄,因此从1开始计算列 */
    .av__row .av__cell:nth-child(2), 
    .av__row--footer .av__calc:nth-child(1) {
        display:none;
    }
    

    注意 nth-child(1)是控制符,别用这个,从 2 开始是第 1 列,根据自己的主键所在的列进行隐藏,但,footer 那里,即最底部的计算框由于没有控制柄,因此从 1 开始计算列

    注意:以上,针对所有数据库生效。

    如果只针对某一数据库,可以先复制下数据库 id,然后用下面的 css 进行隐藏

    /* 功能:隐藏指定的数据库列(包括主键列) */
    /* 注意nth-child(1)是控制符,别用这个,从2开始是第1列,根据自己的主键所在的列进行隐藏 */
    /* 但,footer那里,即最底部的计算框由于没有控制柄,因此从1开始计算列 */
    /* 这里的数据库id,改成你自己的 👇 */
    div[data-node-id="20240814050623-m3xfh5s"] :is(
        .av__row .av__cell:nth-child(2), 
        .av__row--footer .av__calc:nth-child(1)
    ){
        display:none;
    }
    

    这里 20240813141121-gw0acsy 改成你自己的数据库 id 即可。

    2 回复
    2 操作
    wilsons 在 2024-08-14 14:18:35 更新了该回帖
    wilsons 在 2024-08-13 23:03:18 更新了该回帖
  • 我感觉给特定的数据库块添加属性应该更方便,比如自定义属性 hide-block=true ,然后应用下面这个 CSS 片段

    .protyle-wysiwyg [custom-hide-block=true] [data-dtype="block"] {
        display: none;
    }
    

    不过有个问题就是最后这里对不齐:

    image.png

    1 回复
  • 没有太理解。

    custom-hide-block 这个是数据库块属性吗?

    data-dtype="block" 这个又是什么?

    不是隐藏列吗?这样咋感觉整个数据库都隐藏了。

    1 回复
  • 你可以试一下

    01 自定义属性:

    image.png

    02 不同类型的数据库字段有不同的属性,比如主键:

    image.png

    CSS 片段的作用就是隐藏具有该自定义属性的块下的 block 类型的元素

    1 回复
  • wilsons 1 评论

    大佬,666 呀

    确实,这种方法更方便些,不过,对新手有难度,得找到每种列的属性标志,不过如果仅仅隐藏主键很方便了。

    1 回复
    这个方法还有一个优势,就是无论不同视图的主键列放在哪里都能正确隐藏
    JeffreyChen 1 赞同
  • 这个 CSS 应该解决了之前的对不齐的问题:

    .protyle-wysiwyg [custom-hide-block=true] [data-dtype="block"] {
        display: none;
    }
    .protyle-wysiwyg [custom-hide-block=true] .av__calc[data-dtype="block"]:first-child + .av__calc {
        padding-left: 1.625em;
        box-sizing: initial;
    }
    

    启用代码片段后,给需要隐藏主键的数据库块添加一个自定义属性即可:

    image.png

    1 操作
    JeffreyChen 在 2024-10-08 10:14:47 更新了该回帖
  • xueluo

    不过嘛,其实这个也没那么重要了,纠结的朋友可以用下面的 css 隐藏下

    隐藏主键的 CSS 代码在使用过程中,出现一个问题:将数据库任何一列(以列 A 为例)执行“固定列”操作后,紧邻该列(列 A)的最右侧列(列 B)会自动隐藏

请输入回帖内容 ...

推荐标签 标签

  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 650 关注
  • 996
    13 引用 • 200 回帖 • 11 关注
  • 负能量

    上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)

    88 引用 • 1235 回帖 • 402 关注
  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    6 引用 • 14 回帖 • 2 关注
  • 游戏

    沉迷游戏伤身,强撸灰飞烟灭。

    178 引用 • 816 回帖
  • 微软

    微软是一家美国跨国科技公司,也是世界 PC 软件开发的先导,由比尔·盖茨与保罗·艾伦创办于 1975 年,公司总部设立在华盛顿州的雷德蒙德(Redmond,邻近西雅图)。以研发、制造、授权和提供广泛的电脑软件服务业务为主。

    8 引用 • 44 回帖
  • 前端

    前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。

    247 引用 • 1348 回帖
  • 职场

    找到自己的位置,萌新烦恼少。

    127 引用 • 1706 回帖
  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

    492 引用 • 927 回帖
  • SpaceVim

    SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,以模块的方式组织管理插件以
    及相关配置,为不同的语言开发量身定制了相关的开发模块,该模块提供代码自动补全,
    语法检查、格式化、调试、REPL 等特性。用户仅需载入相关语言的模块即可得到一个开箱
    即用的 Vim-IDE。

    3 引用 • 31 回帖 • 107 关注
  • 招聘

    哪里都缺人,哪里都不缺人。

    190 引用 • 1057 回帖
  • CSS

    CSS(Cascading Style Sheet)“层叠样式表”是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。

    196 引用 • 540 回帖
  • CloudFoundry

    Cloud Foundry 是 VMware 推出的业界第一个开源 PaaS 云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

    5 引用 • 18 回帖 • 175 关注
  • ZeroNet

    ZeroNet 是一个基于比特币加密技术和 BT 网络技术的去中心化的、开放开源的网络和交流系统。

    1 引用 • 21 回帖 • 639 关注
  • 工具

    子曰:“工欲善其事,必先利其器。”

    288 引用 • 734 回帖
  • HTML

    HTML5 是 HTML 下一个的主要修订版本,现在仍处于发展阶段。广义论及 HTML5 时,实际指的是包括 HTML、CSS 和 JavaScript 在内的一套技术组合。

    107 引用 • 295 回帖
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    11 引用 • 5 回帖 • 613 关注
  • 域名

    域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的 Internet 上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。

    43 引用 • 208 回帖
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    546 引用 • 672 回帖
  • GitLab

    GitLab 是利用 Ruby 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面操作公开或私有项目。

    46 引用 • 72 回帖
  • NetBeans

    NetBeans 是一个始于 1997 年的 Xelfi 计划,本身是捷克布拉格查理大学的数学及物理学院的学生计划。此计划延伸而成立了一家公司进而发展这个商用版本的 NetBeans IDE,直到 1999 年 Sun 买下此公司。Sun 于次年(2000 年)六月将 NetBeans IDE 开源,直到现在 NetBeans 的社群依然持续增长。

    78 引用 • 102 回帖 • 685 关注
  • Solidity

    Solidity 是一种智能合约高级语言,运行在 [以太坊] 虚拟机(EVM)之上。它的语法接近于 JavaScript,是一种面向对象的语言。

    3 引用 • 18 回帖 • 404 关注
  • 安全

    安全永远都不是一个小问题。

    201 引用 • 816 回帖
  • Google

    Google(Google Inc.,NASDAQ:GOOG)是一家美国上市公司(公有股份公司),于 1998 年 9 月 7 日以私有股份公司的形式创立,设计并管理一个互联网搜索引擎。Google 公司的总部称作“Googleplex”,它位于加利福尼亚山景城。Google 目前被公认为是全球规模最大的搜索引擎,它提供了简单易用的免费服务。不作恶(Don't be evil)是谷歌公司的一项非正式的公司口号。

    49 引用 • 192 回帖
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    23177 引用 • 93451 回帖
  • Sphinx

    Sphinx 是一个基于 SQL 的全文检索引擎,可以结合 MySQL、PostgreSQL 做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。

    1 引用 • 219 关注
  • 大数据

    大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

    93 引用 • 113 回帖