【发布时间】:2017-02-23 09:38:10
【问题描述】:
也许我很愚蠢,也许我是个盲人,但我只是一个试图处理 MySQL 某些方面的 Swift 开发人员。
我有一个包含几列的简单表格:
id INT NOT NULL
name VARCHAR NOT NULL
age INT ALLOW NULL
domain VARCHAR NOT NULL
所以唯一的列“年龄”可能是NULL。当我执行SELECT * 时,我会根据“年龄”值收到(id, name, domain) 或(id, name, age, domain)。
即使年龄是NULL,我如何才能获得所有 4 列?所以它可能类似于:(453, John, NULL, johnDoe) 或 (453, John, 37, johnDoe)。
为了访问 MySQL 服务器,我使用了 Swift Perfect 的原生 MySQL 框架。
编辑: 让我的表也有这些列:
randomValue1 INT ALLOW NULL
randomValue2 INT NOT NULL
randomValue3 INT ALLOW NULL
所以如果我获取数据,它可能是 7 个值(如果一切都已设置)或 6 个值,如果 smth 未设置,那么如何知道设置了什么,未设置什么?
【问题讨论】:
-
查看用于查询的代码会很有用
-
SELECT id,name,age,domain from TABLENAME。它工作正常。 -
Select * 将为您提供所有 4 列,包括年龄为 null 的行。你的意思是如果值不存在,你想得到字符串 NULL 吗?如果是这样,为什么?如果您这样做,您会将所有行中的年龄转换为字符串。
-
SELECT * FROM list WHERE id = '(id)'
-
@GurV 这是一个简单的例子。我有另一个表,更大,它包含 3 列具有 NULL 值,所以当我收到数据时,我需要解析它。如果我使用简单的“count”函数,它并不代表哪些列是 NULL。