问题标签 [non-nullable]

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 投票
1 回答
1184 浏览

scala - 确保Scala中的notnull类?

由于 NotNull 特征已被弃用,那么声明我的类不可为空的最佳新方法是什么?

仍然有编译器选项(不防止有人在其他项目中滥用我的库)。以及一些我怀疑 Scala 编译器会尊重的相互冲突的 Java 注释。

0 投票
1 回答
125 浏览

c# - 初始化非空锯齿数组

我目前正在 UCLAN 学习计算,我必须使用 Spec# 编写一个程序,并且我需要一个不能为空的二维锯齿状数组。我知道对于普通数组,我可以这样声明

但是当我想为一个锯齿状数组声明它时,我应该像这样写它

这很好用,但是当我想初始化它时:

它抛出一个错误,我只是找不到如何解决这个问题。

0 投票
1 回答
376 浏览

entity-framework - EF 4.0 中的可空“标量导航属性”:将单独数据库表中的不可空列映射到可空标量实体属性?

使用 Entity Framework 4.0 版(或与 .NET 4.0 兼容的任何其他版本),我想映射这个现有的关系数据库架构:

关系数据库模式

到这个逻辑对象模型:

逻辑对象模型

我尝试设置如下:(我希望德语字幕不会太迷失方向。)

Entity Framework 的 <code>Foo</code> 实体的映射详细信息及其 <code>B</code> 属性的设置

实体框架给了我这个错误:

FooBs.B错误 3031:映射片段时出现问题……:表中的不可为空列FooBs映射到可空实体属性。

在逻辑模型中,B应该可以为空。但是,在数据库中,它不是,因为它驻留在单独的表中。(我喜欢避免可以为空的数据库列。)它只有在FoosFooBs被连接时才可以为空(由于 1:0..1 基数)。

如何在不更改数据库架构或对象模型的情况下修复我的映射?


PS:我也试过这个 EF 6.0 代码优先映射:

但这也不起作用:从数据库中读取时,EF 会忽略 ; 中没有子记录的所有记录FooBs。写入数据库时​​,它会尝试将所有属性设置NULL为.FooBs.BFooBnull

0 投票
1 回答
584 浏览

c# - 更改控制器方法参数,具有不可为空的类型错误

我是 MVC 的新手,我正在尝试编辑我完成的教程以了解一切是如何工作的。最初,本教程有一个搜索功能,可让您通过两个字符串参数进行搜索,一个检查电影标题,一个检查电影类型,返回与这些参数匹配的任何值的查询。

我正在尝试进行演员搜索,该搜索按演员姓名和演员年龄(int)进行搜索。随着年龄的增长,我不断遇到不可为空的类型问题,我尝试了从将年龄声明为 int? 到 .ToString()'ing IsNullOrEmpty 的所有方法,但没有任何效果。

有人可以告诉我该怎么做吗?

下面是教程的 searchIndex 函数。(两串)

下面是我的版本(int Age 和一个字符串)

我在模型中初始化 int Age 是:

我对年龄的看法(不确定如何在此处完全实现 int

任何帮助将不胜感激,因为我对这一切都是全新的。

谢谢!

0 投票
1 回答
60 浏览

mysql - 为什么 Mysql 让我在没有约束 NOT NULL 的字段的情况下插入记录?

我创建了一个表,其中包含一些具有 NOT NULL 约束的属性,然后我尝试了 INSERT INTO 指令,仅为没有 NOT NULL 约束的字段指定值,但该指令仍然有效。它不应该工作并给出错误吗?

0 投票
0 回答
96 浏览

c# - 差异可为空的值:.Value 与否?

我对 Nullable 有点陌生。我在 C# 中有一个我想要为空的 DateTime,而不是在 try-catch 中分配值,然后检查它是否为空。

代码:

所以,我的问题:

我应该使用两者中的哪一个,为什么要使用它,两者之间有什么区别:

或者:

0 投票
4 回答
4071 浏览

sql - 带有 NON-NULLABLE 列的插入语句

我有一个用于将一些数据插入数据库的 SQL Server 脚本。为了节省空间/时间,我不会在这里上传整个脚本,但我会包括重要的部分。

所以这就是问题所在。我有一个表,其中有一列 some loginhtml,该列是不可为空的类型。我希望在此特定添加上将此列留空,以便它可以默认返回到我所指向的父级。所以这里我们有这个重要部分的声明:

在这里,我们将设置为:

这是不可避免地会失败的插入部分:

编辑:我怎样才能让这个脚本将 loginhtml 列“默认”到父应用程序是什么?是否有一些“IF”语句/子句可用于完成此操作?

0 投票
8 回答
18451 浏览

c# - C# 创建一个不可为空的字符串。可能吗?不知何故?

所以不能继承string。你不能制作一个不可为空的string。但我想这样做。我想要一个类,我们称它为 nString,它返回一个默认值,否则它会为空。我有可能知道有多少空字符串甚至空对象的 JSON 对象。我想创建具有永远不会返回 null 的字符串的结构。

我想我可以做这样的事情:

但这还有很多工作要做。有没有办法做到这一点?

0 投票
2 回答
611 浏览

java - 无法同时使用 @NonNull 和 @NonNull 进行注释

我正在使用 IntelliJ 13.1.5 和 Java 8 SDK,并且我已经设置了 IntelliJ 内置的空值检查器以checkers.nullness.quals.NonNull用作我选择的注释。

现在,当我写一个像这样的简单类时

IntelliJ@NonNull用警告在注释下划线

无法同时使用 @NonNull 和 @NonNull 进行注释

首先,我认为它与实现接口的类有关,这些接口也具有用@NonNull.

但我也遇到了上面例子中的具体类。

我的下一个猜测是多个库使用相同的注释名称,并且可能存在名称冲突。但不幸的是,警告没有指定包的确切类名。如果是这种情况,则必须有一些启用隐式注释的设置。

如何在不删除注释的情况下摆脱此警告?

0 投票
2 回答
3098 浏览

date - SQL*Loader - 如果传入值为空白,则使用 sysdate

我正在尝试为 SQL*Loader 脚本创建一个控制文件。我有一个定义为 NOT NULL 的日期列。如果来自文件的传入值为空白,我需要设置脚本以使用当前日期。我尝试了几种方法-下面的一些示例-但是在运行 sql loader 时我一直遇到错误,但是如果我确实从 dual 中进行选择,则该格式有效

我需要如何在 SQLLoader 中进行设置?

oracle 解码示例 ORA-00907:缺少右括号

或者

作品

我需要进行哪些更改才能从 sql 加载程序控制文件中使用它?