问题标签 [constraints]
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.
sql - SQL Server 2005:可为空的外键约束
我在表会话和用户之间有一个外键约束。具体来说,Sessions.UID = Users.ID。有时,我希望 Sessions.UID 为空。这可以允许吗?每当我尝试这样做时,都会收到 FK 约束违规。
具体来说,我通过 LINQ 在 Sessions 中插入一行。我设置了 Session.User = null; 我得到这个错误:
p>但是,当我删除使 User 属性为空的行时,我在 SubmitChanges 行上收到此错误:
p>我的表中没有一个名为“cons”的字段,在我的 5,500 行 DataContext.designer.cs 文件中也没有,也没有在任何相关对象的 QuickWatch 中,所以我不知道“cons”是什么.
在数据库中,Session.UID 是一个可为空的 int 字段,而 User.ID 是一个不可为空的 int。我想记录可能有也可能没有 UID 的会话,我宁愿在不禁用对 FK 关系的约束的情况下这样做。有没有办法做到这一点?
c# - C#:Enum.IsDefined 在组合标志上
我有这个枚举:
我正在尝试对此(或任何真正的)枚举进行包装,以通知更改。目前它看起来像这样:
由于实际上可以为枚举分配任何值,因此我想检查给定的值是否已定义。但是我发现了一个问题。如果我在这里给它一个由例如组成的枚举Csv | Excel
,那么Enum.IsDefined
将返回false
。显然是因为我没有定义任何由这两个组成的枚举。我想这在某种程度上是合乎逻辑的,但是我应该如何检查给定值是否有效?换句话说,要让它工作,我需要用什么交换下面的行?
sql-server-2005 - SQL Server 2005 数据库中的复杂查询
我的数据库中有一个表,其中的记录在概念上可以是其他 rcords 的子项。该表有一个非空名称字段。我需要确保一组孩子中的每个名字都是唯一的,但不是在整个数据库中都是唯一的。我想使用数据库内的约束来强制执行此操作。实现这一目标的最佳方法是什么?我知道我将不得不在这个过程中的某个时刻进行如下查询:
问题是我把这个查询放在哪里?
c# - “约束类型”在 VB/C# 中有用吗?
介绍
这个问题是由 Marc Gravell 的建议提出的,我向该站点发布新的语言功能建议以收集对它们的一般意见。
这个想法是收集他们是否可能有帮助,或者也许已经有另一种方法来实现我所追求的。
建议(约束类型)
VB.Net 中的普通变量声明是这样编写的:
我建议允许以下表格
这种语法是从 Vb.Net 的约束泛型风格中借来的
为什么允许这样做?...它有什么用?
那么我最初想到的具体情况是定义一个特定的控件子集。我希望为一系列控制工厂创建一个接口,这些工厂将根据一些业务规则提供控制。
这些控件的使用者将通过接口要求创建的所有控件还应该实现一些接口系列(在我的例子中只有一个),这些接口为所有这些控件提供了通常在普通控件中没有的额外设施。
值得注意的是,以下内容目前不起作用。
我认为这转换为 C# 为:
由于无法将 SpecialTextbox 转换为 T,返回“New SpecialTextbox”的尝试失败。
我意识到我的工厂可以被允许返回简单的控件,如果它们实现了 ISpecialControl,我可以在运行时检查,但这会产生运行时问题,我宁愿在编译时检查,因为即使目前不是一个实际的可能性,这也是一种合乎逻辑的可能性
更新:想法是这些工厂可以位于外部(甚至可能是第三方)程序集中,并且可以依赖于他们想要的任何控件库,创建和返回这些控件的派生类,这些派生类也实现了 ISpecialControl。
这些程序集可以通过自配置反射(第一次通过的反射,然后是配置,然后在进一步运行中使用)定位,并且调用程序集在不知道这些控件将采取何种依赖关系的情况下使用这些程序集。
它确实要求这些工厂是可构造的,而无需传递有关它们期望调用的控件的信息,因为这会破坏这一点。
那么你觉得……这会有用吗?……有没有更好的方法来实现这一点?有没有办法实现这一目标?
sql - 我如何知道 CONSTRAINT_NAME 是主键还是外键?
在 SQL Server 2005 上使用此 SQL
我得到主键和外键。
我怎样才能只获得外键?如何查看约束是主键还是外键?
谢谢
perl - 如何解决 Perl 中的一组约束?
我在 Perl 中有以下一组约束(只是一组示例约束,不是我真正需要的约束):
我需要找到一个($a, $b, $c)
满足约束的列表。我天真的解决方案是
现在,这个解决方案不能保证结束,而且通常效率很低。在 Perl 中有没有更好的方法来做到这一点?
编辑: 我需要这个用于随机测试生成器,因此解决方案需要使用随机函数,例如rand()
. 完全确定性的解决方案是不够的,尽管如果该解决方案可以给我一个可能组合的列表,我可以随机选择一个索引:
编辑2: 这里的约束很容易用蛮力解决。但是,如果有许多变量具有很大范围的可能值,那么蛮力不是一种选择。
postgresql - 仅当 Postgresql 中的列不为空时,如何强制执行约束?
我想要一个仅在列不为空时强制执行约束的解决方案。我似乎无法在文档中找到执行此操作的方法。
根据数据的性质,我将在创建表时拥有标识符 b 和一个值。在我们收到额外的数据后,我将能够填充标识符 a。在这一点上,我想确保 aunique key of (identifier_a, value1)
但仅当 identifier_a 存在时。
希望这是有道理的,有人有任何想法吗?
constraints - 解决时间限制的调度软件
是否有用于协调日程和组织会议的好软件或好的工具包?
我必须解决的具体问题:
我有来自A组的a人和来自B组的b人。现在安排A中的人和B中的人之间的单独会议。
这是一个现实生活中的问题。一家公司有一个开放日,有几个面试官。那天,一群准员工来访。对于每个潜在员工,我们必须安排与不同面试官的不同会议,所有这些会议都有不同的时间限制。
所以,这是一个约束满足问题。有没有好用的软件之类的?有任何想法吗?
更新:如果我们只使用一个简单的日历,那么安排所有会议将需要做很多工作。这几乎就像通过检查来找到图中的最短路径,而不是运行一个好的算法来计算答案。