问题标签 [relation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
82176 浏览

ruby-on-rails - 如何返回一个空的 ActiveRecord 关系?

如果我有一个带有 lambda 的范围并且它需要一个参数,这取决于参数的值,我可能知道不会有任何匹配项,但我仍然想返回一个关系,而不是一个空数组:

我真正想要的是一个“无”方法,与“全部”相反,它返回一个仍然可以链接的关系,但会导致查询短路。

0 投票
1 回答
1008 浏览

database - 从表中删除异常

我有这张桌子,我应该重新设计它以消除它的所有异常。我不会给出表格,而是给出依赖项。

Product 和 Store 是这个关系中的关键

好的,所以我必须通过分解表并创建新表并说明每个表中的内容来消除异常。我不确定该怎么做。

0 投票
2 回答
843 浏览

php - 国家地区和城镇表的 MySQL 关系

我试图找出关联国家、地区和城镇表的最佳方法。

在我的网站上,我希望用户能够进入一个城镇。然后是可选的国家和地区,这两个都需要输入或根本不输入。

目前我的桌子是这样的

tbl>用户有 townID (FK)

tbl>town has id(PK) townName regionID(FK DEFAULT NULL)

tbl>region 有 id(PK) regionName countryID(FK NOT NULL)

tbl>国家有 id(PK) countryName

我认为可能会进一步将用户与城镇关系吐出:

tbl>用户有 locationID (FK)
tbl>location 有 id (PK) townID(FK) regionID(FK) countryID(FK)

但我认为这是不必要的,只会使问题进一步复杂化?

国家数据库已被填充。我打算建立自己的用户输入的城镇>地区>国家关系的参考。因此,如果用户输入一个没有地区和国家/地区的城镇,那么如果还没有一个没有地区 ID 的同名城镇,那么它会进入没有 regionID 的 tbl>town。对于用户已输入地区和国家 ID 的城镇也是如此。只有我在进入之前检查是否已经存在城镇 > 地区 > 国家关系。稍后在网站开发中,我将根据用户输入的城镇为国家/地区提供 Ajax 建议。

所以对于问题:

我可以设想这样的陷阱,例如重复数据或可能被覆盖的数据。有没有更好的方法来构建表格以适应我想要的方法?

前面的问题可能会回答这个问题:但是我可以做些什么来减少表的 PHP 处理。显然,我更喜欢只插入一个 PHP 语句,但我认为有太多的注意事项不能一次完成。

此外,由于用户的城镇条目可能为空,并且可能包含也可能不包含对区域的外键引用,因此如何最好地创建一个考虑到这一点的视图?

由于它将被托管,我宁愿不使用 MySQL 函数。

如果您需要任何澄清,请告诉我。在继续之前,我真的很想在第一次做到这一点,所以你的帮助将是无价的。

0 投票
1 回答
1254 浏览

class - 显示双向和组合关系UML类图

我有两个课程事件和评论。

该事件中有一个实例对象 Review。评论中还有一个对象事件。这意味着它们之间存在双向关系(两个箭头)。

删除事件后,评论也将被删除。这意味着它们之间的组合关系(事件中的实心菱形)。

现在我的问题是:如何在同一行中同时显示两个箭头和实心菱形?

我想知道在显示组合或聚合时是否应该省略方向关系?通过关联,可以毫无问题地显示方向箭头,但是有菱形就有问题......

0 投票
1 回答
221 浏览

linq-to-entities - linq 到实体保存

我有以下数据库结构。

在此处输入图像描述

我已经保存Buyer在数据库中。我有buyer id。我必须将买家的联系信息保存在数据库中,因为我将联系人保存在数据库中我还需要保存buyercontactbuyercontact表中。当我尝试BuyerContact在 edmx 文件中添加表时,Visual Studio 2010 不允许我这样做。

如何将信息保存在buyercontact表格中?请帮忙。

他们说,如果在数据库/edmx 中保持适当的关系,当我“联系”时,buyercontact 也会保存到数据库中。我通过互联网搜索,我也发现了类似的问题,但我无法理解。

请帮忙。我必须写一些特殊的代码来保存吗BuyerContact

当我编写此代码以保存联系人时buyercontact,出现错误

无法在 dbo.Buyer 中插入重复键

如果我删除objContact.Buyer = buyer;,则联系信息已成功保存buyercontact但未保存。现在我的问题是,一旦我与买家联系,我还需要将其保存在BuyerContact表格中。

我已经通过这里的帖子,但O无法理解。我已将通用 Linq-to-SQL 存储库用于常见的数据库操作,例如 CRUD。

请帮忙,谢谢

0 投票
1 回答
2321 浏览

mysql - Doctrine 2 上的 YAML 映射异常

我使用 phpMyAdmin 创建了我的数据库和表。我也在那里建立了关系。

然后我想通过执行以下命令让 Doctrine 2 为我创建 YAML 文件:

php 学说 orm:convert-mapping --from-database yml /path/to/fixtures/schema

它创建了 *.dcm.yml 文件,看起来还不错。所以我需要通过这样做来制作实体:

php 学说 orm:generate-entities /path/to/models

但是,我收到此错误:

[Doctrine\ORM\Mapping\MappingException] 类调用者\dcm 不是有效的实体或映射的超类。

我添加了 -v 标志并得到了这个:

异常跟踪: () at /Users/me/Sites/project/modules/doctrine2/classes/doctrine/Doctrine/ORM/Mapping/MappingException.php:137 Doctrine\ORM\Mapping\MappingException::classIsNotAValidEntityOrMappedSuperClass() at /Users/ me/Sites/project/modules/doctrine2/classes/doctrine/Doctrine/ORM/Mapping/Driver/YamlDriver.php:55 Doctrine\ORM\Mapping\Driver\YamlDriver->loadMetadataForClass() at /Users/me/Sites/project /modules/doctrine2/classes/doctrine/Doctrine/ORM/Mapping/ClassMetadataFactory.php:282 Doctrine\ORM\Mapping\ClassMetadataFactory->loadMetadata() 在 /Users/me/Sites/project/modules/doctrine2/classes/doctrine/ Doctrine/ORM/Mapping/ClassMetadataFactory.php:176 Doctrine\ORM\Mapping\ClassMetadataFactory->getMetadataFor() at /Users/me/Sites/project/modules/doctrine2/classes/doctrine/Doctrine/ORM/Mapping/ClassMetadataFactory.php:123 Doctrine\ORM\Mapping\ClassMetadataFactory->getAllMetadata() at /Users/me/ Sites/project/modules/doctrine2/classes/doctrine/Doctrine/ORM/Tools/Console/Command/GenerateEntitiesCommand.php:101 Doctrine\ORM\Tools\Console\Command\GenerateEntitiesCommand->execute() at /Users/me/Sites /project/modules/doctrine2/classes/doctrine/Doctrine/Symfony/Component/Console/Command/Command.php:150 Symfony\Component\Console\Command\Command->run() at /Users/me/Sites/project/ modules/doctrine2/classes/doctrine/Doctrine/Symfony/Component/Console/Application.php:187 Symfony\Component\Console\Application->doRun() at /Users/me/Sites/project/modules/doctrine2/classes/doctrine/Doctrine/Symfony/Component/Console/Application.php:113 Symfony\Component\Console\Application->run() at /Users/我/Sites/project/modules/doctrine2/bin/doctrine.php:40 include() 在 /Users/me/Sites/project/modules/doctrine2/bin/doctrine:4

我试图让 Doctrine 2 作为 Kohana 的一个模块来处理 MySQL 关系。以为我会从让 Doctrine 工作开始,因为这确实是更难的部分。

这是它创建的 YAML 文件:

那么出了什么问题呢?

0 投票
2 回答
75 浏览

mysql - 过滤器的最佳数据库系统

我正在构建一个实现可应用于数据集的过滤器的网站。请允许我解释一下这些过滤器。在这种情况下,它将是一个带有房屋的网站。

这些天你会更频繁地看到它。总共大约有 7 个过滤器。

现在我不确定我应该使用什么样的数据库。将有大约 10000 个实体和每日更改(约占数据集的 1%)。我正在考虑的两个是:

MongoDB面向对象

首先,我是这些所谓的面向对象数据库的新手。但我听说过一些关于他们的好故事。他们的计划较少,而且在工作中可能非常快。

MySQL关系型数据库

我以前在这种情况下使用过 MySQL,性能可以接受。我使用了使数据库更加动态的EAV 模型。我使用带有关系的 InnoDB 引擎来保持完整性。

问题是当我使用多个过滤器时,子查询会堆积起来,当我在你选择过滤器时计算可能性的数量时会发生这种情况。

在这种情况下如何看待性能,什么 dbms 会表现得更好?

0 投票
1 回答
856 浏览

database - 数据库索引:示例

我很快就要考试了,我想知道如何解决这些关于索引的问题:

1.数据库由关系 R(A,B,C) 组成。A 和 B 是整数 [0,10 000](每个 4B),C 是 varchar(20) (20B)。关系 R 由 10^6 个元组组成。块大小为 2048 B。

A)如果我们询问这个查询,如果我们在 B 上有一个 B+-tree 索引,我们必须读取多少块(最好和最差):

从 R 中选择 C,其中 A=100 且 B=10

B) 索引 A 有意义吗?如果是,哪种类型的指标最好?

另一个类似的问题是:

2.数据库由关系R(A,B,C)组成。A 和 B 是整数 [0,10 000],C 是 varchar(150)。关系 R 由 10^6 个元组组成。块大小为 2048 B,A、B 是键。

A)如果我们询问查询“ SELECT C FROM R WHERE A=4711 并且:

  • 我们没有索引。
  • 我们在 A 和 B 上有一个 B+-tree 索引。

b) 单独索引 B 和单独索引 A 是否有意义,而不是在 A 和 B 上设置一个索引。什么类型的索引是最好的?

编辑

这是我所做的:

问题 1 A)

元组的大小 = 20+4+4=28 B

2048/28=73 元组/块向下舍入

10^6/73= 13 699 个块代表整个关系,向上取整

索引读数:4*n+4(n+1)<=2048 B => n=255 向下舍入

B+树的第一层= 255<10^6 否

B+树的第二层= 255*256<10^6 否

B+树的第三层= 255*256*257>10^6 是的,10^6 个元组可以放入高度为 3 的 B+树。

数据读取:如果我们假设 A=100 的概率为 1/10001,B=10 的概率相同,那么我们有:

1/10001*1/10001*10^6 向上取整 = 1 个元组

在最坏和最好的情况下:1 个元组 = 1 个块

然后我们有 3+1 块读数

这样对吗?

我不知道怎么做B)..

我真的不知道如何回答问题2 ..请帮帮我

0 投票
1 回答
151 浏览

algorithm - 用数组解决递归关系

来自墨西哥。真相几乎从不问或开新问题,因为真正的论坛并不仅如此,如果不是工作而不是网络,你可以找到很多关于主题x或y的信息,但是这一次我感觉很失败。我有两年的递归。

  1. 定义以下递归算法。

一个。计算接下来的 n 个整数。

起初没有提到高手,如果算法返回一个总和,或一组数字。此外,尽管原则上和算法设计要求第二种情况通过其表达式解决为递归关系......这就是我迷失的地方,而不是如何将其表达为 RR。这可以解决

湾。计算一组整数的最小值

在另一种情况下,假设需要一组整数中的最小值。这已经解决了,但事实并将其传递给 RR 修复程序,让我完全被淹没了。

感谢任何帮助,谢谢

0 投票
1 回答
980 浏览

magento - 类别<->产品关系

magento 1.4.1.1 有这个问题,当我删除一个产品时,它不会减少类别树视图中的产品数量。我发现 magento 没有从“catalog_category_product”表中删除条目。

谁能想到发生这种情况的原因?我正在尝试搜索调用此函数的核心(从数据库中删除该行),但我找不到它。

帮助将不胜感激。