使用整数列时,最好使用0NULL来表示没有值.

例如,如果一个表有一个parent_id字段,而某个特定条目没有父项,您会使用0还是NULL

我过go 总是使用0,因为我来自一个Java世界,在1.5之前,整数总是必须有一个值.

我问的主要是性能方面的问题,我不太担心哪个选项"更正确".

推荐答案

使用NULL更可取,原因有两个:

  1. NULL表示字段没有值,这正是您试图建模的.
  2. 如果您决定在将来添加一些引用完整性约束,则必须使用NULL.

Database相关问答推荐

无法连接MatrixOne(来自GitHub)

MongoDB事务,回调API方法

使用 noSQL 和 MongoDB 在数据库中存储任何类型文件的最佳方法是什么

嵌套事务的目的

将数据库/后端添加到 android 应用程序

通过 mySQL 命令行直接上传图片

SQL Select 用字符串替换整数

区分大小写的数据库有什么好处吗?

我应该为我创建的新创建的 PostgreSQL 模式使用什么正确的文件扩展名?

在 MySQL 中查看表以进行更改?

本地数据库,我需要一些例子

执行语句还是运行脚本?

为 Java servlet 管理数据库连接的最佳方法

如何在 SSIS 中插入新记录之前清空我的目标表?

如何在android中使用合同类?

Twisted + SQLAlchemy 和最好的方法

可以将 SQLAlchemy 配置为非阻塞吗?

如何在 SQL Server 中生成并手动插入唯一标识符?

数据库效率 - 每个用户的表与用户表

在 Django 中,如何从数据库中 Select 100 条随机记录?