Access 中的 BOOLEAN 数据类型(即 Jet/ACE)返回 -1 表示 True,0 表示 False;该字段始终是必需的(即,它不能设置为 NULL)。SQL Server BIT 类型为 True 返回 1,为 False 返回 0,并且还允许 NULL。
我正在寻找一个 T-SQL 列定义,它使用 smallint、检查约束和 NOT NULL 的组合来复制 Jet/ACE BOOLEAN 数据类型的功能。换句话说,该列将只接受值 0 和 -1。
Access 中的 BOOLEAN 数据类型(即 Jet/ACE)返回 -1 表示 True,0 表示 False;该字段始终是必需的(即,它不能设置为 NULL)。SQL Server BIT 类型为 True 返回 1,为 False 返回 0,并且还允许 NULL。
我正在寻找一个 T-SQL 列定义,它使用 smallint、检查约束和 NOT NULL 的组合来复制 Jet/ACE BOOLEAN 数据类型的功能。换句话说,该列将只接受值 0 和 -1。
解决您对 BIT 的担忧:
结果:
BIT 优于 TINYINT/SMALLINT 的好处是,如果您有 1-8 个 BIT 列,它们可以放入单个字节。
在所有这些情况下,你仍然不能说
你还是要说
这将做到: