CouchDB 支持引用完整性吗?

2023-12-29

我是 CouchDB 的新手,正在学习它。我没有遇到 CouchDB 对引用完整性的支持。 我们可以为 CouchDB 文档中的字段创建外键吗?

例如是否可以确保订单文档中使用的供应商名称在供应商数据库中可用?

CouchDB 支持引用完整性吗? 是否可以将文档中的字段作为主键?


不,CouchDB 本身不处理外键,因此您不能让它为您处理系统的引用完整性。您需要在应用程序级别处理供应商检查。

至于是否可以将某个字段设为主键,主键是 _id 字段,但您可以使用任何有效的 json 作为数据库上视图的键。因此,例如,您可以创建一个以供应商为键的订单视图。

就像是

function(doc) {
  if (doc.type == 'order')
    emit(doc.vendor,doc);
}

将获取数据库中具有类型属性和值顺序的所有文档,并将它们添加到使用其供应商作为键的视图中。

CouchDB 视图简介 http://wiki.apache.org/couchdb/Introduction_to_CouchDB_views

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CouchDB 支持引用完整性吗? 的相关文章

  • CouchDB 只写数据库

    我正在尝试设置一个可公开写入且只能由 管理员 角色读取的 CouchDB 数据库 我怎样才能做到这一点 有没有类似的validate doc update访问文档的函数 查看这一页 http wiki apache org couchdb
  • 我应该如何为回合制多人 iPhone 棋盘游戏构建数据库和 API 服务器? (考虑nodejs、mongo、couch等)

    我正在为 iPhone 以及最终的 Android 开发一款回合制棋盘游戏 我正在使用 Appcelerator Titanium 来开发它 我的多人游戏设计类似于 Words With Friends 用户准备好后轮流进行 然后对手的游戏
  • 如何在Fauxton中使用reduce

    我一直在关注一些 Couch 培训 但无法弄清楚如何在 Fauxton 中使用reduce 选择地图区域下方的 count 本身不会执行任何操作 我尝试将其添加到地图代码下方 但我想我需要以某种方式集成它 在我的示例中 我试图计算每个标签在
  • 在loudant搜索索引中添加功能

    我在 cloudant 中有一个 Json 文档 id 3 f812228f45b5f4e4962505561953ew245 rev 3 f812228f45b5f4e496250556195372b2 wiki page http en
  • CouchDb 视图 - 列表中的键

    我想查询 CouchDB 并且我有一个特定的需求 我的查询应该返回与此条件相对应的文档的名称字段 id 等于或包含在文档归档 列表 中 例如 字段输出如下 output doc s100 doc s101 doc s102 doc s103
  • CouchDB 每用户 db 具有共享数据可扩展性

    I have an application with the following architecture 主 couchdb 需要在用户之间共享数据 EG 如果 user 1 将数据写入云 则会复制到主服务器并返回到 user 2 和 u
  • 如何在 couchdb 中编写通配符搜索查询,其中名称如“a%”

    如何在 couchdb 中编写通配符搜索 我想在 sql 中编写与 LIKE 相同的查询 请帮助我 name arun surname mr name balu surname tp 我需要列出所有以 a 开头的名称 Thanks 在 co
  • 我们可以将 cassandra / couchdb / mongodb 与 Google App Engine 基础设施一起使用吗?

    无论如何 我们可以使用 Google App Engine 但不使用 google 的 bigtable 吗 就像存储我的数据一样 我更喜欢使用 cassandra 并且能够插入和拔出额外的数据库服务器 如果我想使用 CouchDb Mon
  • MySQL外键允许NULL吗?

    我正在拼凑一个图像网站 基本模式非常简单 MySQL 但我在尝试表示与图像关联的可能的管理标志 不适当 受版权保护 等 时遇到了一些麻烦 我目前的想法如下 tblImages imageID INT UNSIGNED NOT NULL AU
  • CouchDB“加入”两个文档

    我有两个看起来有点像这样的文档 Doc id AAA creator id data DataKey id credits left 500 times used 0 data id AAA 我想要做的是创建一个视图 它允许我传递 Data
  • 解决 CouchDB 中已删除文档的复制冲突

    官方文档推荐的解决复制冲突的方式是 使用文档阅读冲突的修订版本 conflicts字段 例如通过视图 获取列出的所有修订的文档 执行特定于应用程序的合并 删除不需要的修订 当我想合并的时候问题就来了deleted文件 他们没有出现在 con
  • couchdb:设计文档中的地图给出了compilation_error

    我在 Debian 测试中使用 Couchdb 1 1 1 我在数据库中有这个设计文档 id design Page rev 9 1944cdebabf20ae569eab7b534b43e67 views all map function
  • CouchDB复制忽略零星文档

    我的应用程序有一个 CouchDB 设置 CouchDB 2 1 1 它在很大程度上依赖于复制完整性 我们使用 每个用户一个数据库 方法 并附加一层 角色 db s 将用户分组 如下图所示 最近 在增加测试人员数量的同时 我们发现一些文档没
  • 库存管理系统的 SQL 与 NoSQL

    我正在开发一个基于 JAVA 的网络应用程序 主要目的是拥有在多个称为渠道的网站上销售的产品的库存 我们将担任所有这些渠道的管理者 我们需要的是 用于管理每个渠道的库存更新的队列 库存表 其中包含每个通道上分配的正确快照 将会话 ID 和其
  • PouchDB 身份验证:创建新的 CouchDB 用户

    我使用 PouchDB 身份验证插件 我喜欢它 然而 我对注册过程有点困惑 也许我没有以正确的方式使用它 我用它在我的 CouchDB 数据库中创建新用户 但我不明白为什么它与特定数据库关联 由于我在 CouchDB 用户的特定数据库之前创
  • jQuery CouchDB - 视图的过滤键

    我正在使用与 couchdb 捆绑在一起的 javascript 库来查询数据库 附带说明一下 这里很好地概述了它提供的功能 并提供了很多很好的示例 http bradley holt com 2011 07 couchdb jquery
  • 如何使用 ibrowse 将附件上传到 CouchDB 中的文档?

    我已经使用curl上传图像文件Penguins jpg 例如 C curl gt curl vX PUT H Content Type image jpeg http localhost 5984 DBNAME DOCID Penguins
  • CouchDB 中的分页?

    我将如何实现分页所需的查询 基本上 当请求第 1 页时 获取前 5 个条目 对于第 2 页 获取接下来的 5 页 依此类推 我计划通过 couchdb python 模块使用它 但这不会对实现产生任何影响 The CouchDB 指南 ht
  • 如何在android中安装和使用couch db

    我应该如何在 android 中安装和使用 couch Db 我的意思是本地沙发数据库 我可以在平板电脑和模拟器中使用它 为此我必须遵循哪些步骤 我目前正在开发一个使用它的项目 有两种选择 1 couchbase android 是的 co
  • 有一种方法可以在 MongoDB 中强制引用完整性 [重复]

    这个问题在这里已经有答案了 当您搜索与 Mongo DB 相关的引用完整性时 标准响应是 MongoDB 不支持此 标准解释是 MongoDB 支持 refs 和 populate 但是没有什么可以阻止您将 ref 更改为无效值 对于许多具

随机推荐

  • UICollectionView 的每个部分独立滚动?

    是否可以使用UICollectionView构建一个布局 其中每个section可以独立滚动吗 例如 假设有 20 行图像 其中每行都可以独立水平滚动以在屏幕外显示更多图像 在此过程中无需滚动其他行 并且整个视图可以垂直滚动以显示更多行 我
  • 使用until 参数调用Facebook News feed (me/home),每次连续调用返回limit/2

    这是我的代码的精简版本 没有初始化调用 一切都很完美 除了我每次连续调用都会传递一个until值转化为FB api 返回极限 2 我曾尝试使用不同的 Facebook 帐户在两次通话之间等待长达 1 分钟 但这对解决问题没有帮助 我检查了n
  • 如何从c++运行c++代码?

    如果我有一些 C 代码作为 C 程序中的字符串量 数据 我可以执行该字符串的内容吗 如在 C 中使用 CodeDOM 或 perl python 等中存在的 eval 函数 简短回答 你不能 稍微长一点的答案 c 没有反射 而且一般都是编译
  • Sublime Text 构建系统与选项

    我有一个项目的各种 shell 构建脚本 并且希望创建一个集中式构建系统 其中包含允许运行哪个 shell 脚本的选项 例如 用户按 Cmd B 然后用户会看到以下选项 1 shellscript1 sh2 shellscript2 sh3
  • 创建 XML 的最快且最有效的方法

    在 Java 中创建 XML 文档最快 最有效的方法是什么 那里有大量的库 woodstox xom xstream 只是想知道是否有人有任何输入 我应该采用代码生成方法 因为 xml 模式众所周知 吗 或者运行时的反射方法 编辑附加信息
  • 是否可以分层标记 matplotlib (pyplot) 条形图?

    我已经成功使用 matplotlib pyplot 绘制了以下条形图 该图来自聚合的 PANDAS DataFrame 如下所示 请注意 条形图中的每个条对应于mean柱子 另请注意 这些值是not零 但 PANDAS 输出0 and 0当
  • Python 3.6+ 格式化解包字典中缺少键的字符串

    在Python3 4中你可以做以下事情 class MyDict dict def missing self key return s key 然后是这样的 d MyDict d first name Richard print I am
  • Castle ActiveRecord 表名称冲突

    当你在 NHibernate 中遇到像 User 这样的保留字时 你只需在有问题的文本周围加上单引号 nHibernate 就会用方括号将文本括起来以进行查询 我的问题是如何使用 Castle ActiveRecord 做同样的事情 实际上
  • 发送包含自定义数据的 SNMP 陷阱

    客户要求我们将 SNMP 陷阱发送到他们的 Nagios 服务器 而不是电子邮件警报 昨天之前我对 SNMP 唯一的了解是它听起来像一个缩写词 所以请原谅 并纠正我 我对它可能有的任何误解 陷阱中需要发送的唯一信息与我们向客户端发出警报的事
  • 在 EC2 实例上启用 OpenSSL

    我目前正在尝试在我的 ec2 服务器上安装 openssl 以便我可以摆脱这个特定的错误 stream socket client SSL operation failed with code 1 OpenSSL Error message
  • 从第一个重定向到 HTTPS 的请求中删除 Azure Web App 上的响应服务器标头

    我正在尝试从 Azure Web 应用程序 使用 ASP Net core 应用程序 删除响应服务器标头 经过多次尝试改变网络配置并使用中间件删除应用程序代码中的标头 微软不会放弃并将响应标头设置为服务器 Microsoft IIS 10
  • 如何在 sqlproj (SQL Server 2012) 脚本中使用 msbuild 属性

    我刚刚将现有的 SQL Server 2008 r2 dbproj 升级到 SQL Server 2012 sqlproj 使用 SQL Server Data Tools 以前 我能够在项目中定义 SQLCMD 变量 然后通过添加以下元素
  • 查找列表元素的所有组合,包括重复元素

    我正在 python 中寻找一种算法 该算法将返回数字列表的所有可能组合 允许重复元素并加起来达到某个数字 例如 给定目标数字 7 以及列表 2 3 4 我希望能够生成以下组合 2 2 3 2 3 2 3 2 2 3 4 4 3 我了解如何
  • Ruby/Rails - 如何将秒转换为时间?

    我需要执行以下转换 0 gt 12 00AM 1800 gt 12 30AM 3600 gt 01 00AM 82800 gt 11 00PM 84600 gt 11 30PM 我想出了这个 0 84600 step 1800 n puts
  • lwuit.html.CSSEngine.applyStyleToUIElement 的 NullPointerException(来源未知)

    我正在执行以下 LinkedIn 登录过程 但不幸的是 在加载 LinkedIn 登录窗口时 授予 Yokeapp 访问您的 LinkedIn 帐户的权限 它没有显示任何内容并引发错误 我在 Eclipse pulsar 中使用 LWuit
  • 如何在 SwiftUI 中使视图的大小与另一个视图的大小相同

    我正在尝试重新创建 Twitter iOS 应用程序的一部分来学习 SwiftUI 并且想知道如何动态地将一个视图的宽度更改为另一个视图的宽度 就我而言 使下划线与文本视图的宽度相同 我附上了一张屏幕截图 以尝试更好地解释我所指的内容 任何
  • 在 Asp.Net 中使用 Ironpython 时 ExtensionAttribute 的引用不明确

    当启动使用程序集的 Asp Net 站点时 我收到以下错误 该程序集又利用 dlr 和 Iron Python 进行脚本编写 BC30560 ExtensionAttribute 在命名空间 System Runtime CompilerS
  • String#split方法混乱

    我尝试了这段代码 String str String str2 System out println str split length System out println str2 split length 输出是 0 6 唯一的区别是s
  • Google 地点自动完成强制选择

    我正在使用 JavaScript Google Places 自动完成 API v3 它工作正常 但我想知道是否有一种方法可以强制从自动完成中进行选择 即不接受任何自由格式文本的输入 我查看了文档 没有看到这样的选项 但为了安全起见 我想我
  • CouchDB 支持引用完整性吗?

    我是 CouchDB 的新手 正在学习它 我没有遇到 CouchDB 对引用完整性的支持 我们可以为 CouchDB 文档中的字段创建外键吗 例如是否可以确保订单文档中使用的供应商名称在供应商数据库中可用 CouchDB 支持引用完整性吗