- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
是的,另一个 NULL 与空字符串的问题。
我同意 NULL 表示未设置的想法,而空字符串表示“一个空值”。这是我的问题:如果列的默认值为 NULL,我如何允许用户输入该 NULL。
假设在系统上创建了一个新用户。有名字和姓氏字段;姓氏是必需的,而名字不是。创建用户时,此人将看到 2 个文本输入,一个用于第一个,一个用于最后一个。此人选择仅输入姓氏。名字在技术上没有设置。在插入期间,我检查每个字段的长度,将所有为空的字段设置为 NULL。
查看数据库时,我发现没有设置名字。立即想到的问题是,也许他们从未见过名字字段(即,因为错误)。但这种情况并非如此;如果空白,他们就离开了。
那么,我的问题是,在接收用户输入时,您如何决定何时将字段设置为 NULL 或空字符串?您如何知道用户希望在未检测到焦点的情况下不设置该字段,或者他们是否删除了值...或...或...?
相关问题:Should I use NULL or an empty string to represent no data in table column?
最佳答案
我会打破这种模式,并说我将始终对零长度字符串使用 NULL,原因如下。
如果您开始细化空白的含义,那么您必须以某种方式确保所有其他开发人员以相同的方式读取和写入它。
如何按字母顺序排列?
与故意留空相比,您能否明确确定用户何时省略输入值?
您将如何明确查询差异?查询屏幕用户能否使用标准输入表单语法指示 NULL 与空白?
在实践中,我从未被禁止使用此规则使用默认、不足为奇的行为来读取和写入数据。如果我需要知道区别,我使用了一个 bool 字段(更容易映射到明确的 UI 设备)。在一种情况下,我使用触发器强制执行 True => null 值,但从未看到它被调用,因为 BR 层有效地过滤掉了条件。
关于database - 处理用户输入时 NULL 与 Empty,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/405909/
所以我有这个表格..有 2 个字段。 “Youtube”和“link”我想做如果你已经填了YouTube,应该这样做: if(!empty($youtube)) { if ($pos === fal
我有一个要验证的输入: 这是 JS: jQuery("#input").live('change', function() { if("#input:not(
假设我在 someNode 中注册了一些带有 id 的小部件(比如 id1、id2)。现在,如果我这样做,domConstruct.empty(someNode),这将通过执行 someNode.in
我需要确定 IQueryable 方法是返回数据,还是像这样将其应用于 RadGrid 的数据源时返回“空”: RadGrid.DataSource = Method(x); if (
我有以下不能正常工作的 $_GET['category'] 也可以等于 0。 if ( empty( $_GET['category'] ) ){ // do something } else
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
这个问题在这里已经有了答案: In C#, should I use string.Empty or String.Empty or "" to intitialize a string? (31
使用下面的内容,我检查每个输入字段是否为空 if ( $("input:empty").length > 0 ) { $(":text[value=]").css('background'
这是有原因的吗?我问是因为如果您需要使用大量空字符,那么您会遇到与使用大量空字符串时相同的情况。 编辑:这种用法的原因是: myString.Replace ('c', '') 因此从 myStrin
我对 Apache POI 有一个大问题。 A B C D 1 text text text text 2
在阅读 MarkLogic 时 Query Performance and Tuning Guide ,我了解了 empty greatest 和 empty least 以及如何将其与 order
我正在使用.NET 3.5。我正在创建一个简单的类,并希望确保处理后的类不应该为 null 或者也不应该是新的.. 所以如果我们可以像这样测试它 Dim objClass as new Class()
我有这个 HTML 页面 foo pre:empty { display: none; } some text here in the pre element 而且我想知道为
我知道我能做到 unless [1].empty? 但是我想知道有没有办法呢? 最佳答案 以及 davidrac 提到的 #any?,以及 ActiveSupport有 #present?这更像是其他
在调试某些东西时,我看到了 STL vector::empty() 实现: bool empty() const {return (size() == 0); } 我相信,每当我们探测
我有一个 NavigationDrawer 来启动 fragment 。我有一个来自 TabPageIndicator 的包含 4 个选项卡的 fragment ,其中 fragment 包含 Lis
我正在使用 Jackson XML 2.8.9,不幸的是我找不到任何方法将空/空集合序列化为空节点。 负责序列化为 XML 的方法: protected byte[] toXml(final Coll
嗨,所有 SO 用户我对 null 和 Empty 的理解有点困惑。我知道 null 是特例,它不等于自身。我想知道如何确定它是空的,你告诉它是空的依据是什么,空也一样 它是基于内存分配还是什么? 如
这个问题在这里已经有了答案: What is the difference between String and string in C#? (66 个答案) 关闭 10 年前。 C# 中的 str
如果要创建一个空的T类型的IEnumerable,可以使用静态泛型方法创建 Enumerable.Empty() 参见 here了解更多信息。 为什么 Microsoft 选择此选项而不是对泛型类型使
我是一名优秀的程序员,十分优秀!