相关疑难解决方法(0)

SQL:使用NULL值与默认值

哪些优点缺点使用NULL值,而不是在SQL 默认值

PS.这里已经提出了许多类似的问题,但没有人回答我的问题.

sql database ms-access database-design

40
推荐指数
8
解决办法
5万
查看次数

在SQL Server中存储MD5哈希

在SQL Server中varbinary(16),存储MD5哈希是最有效的方式吗?除了在linq查询中返回它之外,不会对它做任何事情.

sql-server md5

12
推荐指数
1
解决办法
8063
查看次数

SQL Server可以为空的数据类型大小

Microsoft SQL Server DBMS中可空数据类型的大小是多少?

例如,非可空int应该占用4个字节,可空的列空间将占多少?

子问题:nullable int,char(N),nvarchar(N) - 我假设它们可能以不同方式存储.

我读过的内容:

  • 在哪里可以找到SQL Server数据类型的大小 - 获取SQL版本列表的好方法以及我的SQL Server版本的大小.但是没有说可空类型.
  • http://msdn.microsoft.com/en-us/library/ms189124.aspx - 有一个计算所需可变大小列空间的公式:"Variable_Data_Size = 2 +(Num_Variable_Cols x 2)+ Max_Var_Size".这很奇怪:为什么它包含*2乘数(没有告诉nvarchar - 这个公式适用于所有可变大小的类型来自解释); 它必须是一个错字,Max_Var_Size被添加而不是相乘; 最后它包含+2个字节用于存储值的长度,但同样不包含用于存储NULL值的任何内容.据我所知,可以使用值长度为2个字节的3个剩余位来存储NULL标识符,但它是否真的以这种方式存储?
  • SQL Server中"Null"值的大小 - 对我而言,最顶层的答案令人困惑.@Mark Byers说"如果字段是固定宽度,则存储NULL占用与任何其他值相同的空间 - 字段的宽度",但是不可能在相同的计数中存储标准整数值间隔和附加NULL值位.然后"如果字段是可变宽度,则NULL值不占用空间" - 再次存储NULL根本不能占用空间 - 它必须存储一些空值的标记.与其他答案类似的混淆:有人说它需要2个额外的字节,有人 - 只有1个字节.
  • http://home.clara.net/drdsl/MSSQL/DataTypes.html - 包含类型大小的漂亮表,但同样没有专门用于NULL值的表.

sql sql-server

11
推荐指数
1
解决办法
3163
查看次数

将MySQL列值设置为NULL而不是0或''的磁盘空间含义

我正在尝试理解处理磁盘空间索引性能方面几乎为空的列的最佳方法.放入所有空位置NULL与''(对于varchar/text)对比0(对于int)是否存在差异.

谢谢.

mysql database

8
推荐指数
1
解决办法
3147
查看次数

向表添加可为空的rowversion列

我会简短而甜美的。我正在尝试将类型列添加rowversion到现有表中。我的想法是,通过将其添加为NULL,不会为现有的行添加时间戳记,但是可以了。如果是这种情况,那么在什么情况下该列会接受空值?

sql-server rowversion

5
推荐指数
2
解决办法
1904
查看次数

存储空值的位列?

微软文档https://learn.microsoft.com/en-us/sql/t-sql/data-types/bit-transact-sql?view=sql-server-2017说:

整数数据类型,可以采用 1、0 或 NULL 值。

SQL Server 数据库引擎优化了位列的存储。如果表中的位列数为 8 或更少,则这些列将存储为 1 个字节。如果存在 9 到 16 位列,则列将存储为 2 个字节,依此类推。字符串值 TRUE 和 FALSE 可以转换为位值:TRUE 转换为 1,FALSE 转换为 0。转换为位会将任何非零值提升为 1。

怎么可能在一个位中存储 1、0 和 NULL?

sql-server

5
推荐指数
1
解决办法
9424
查看次数

NULL值对SQL Server中存储的影响?

如果您有一个包含20行的表,其中包含12个空列和8个包含值的列,那么对存储和内存使用的影响是什么?

null是唯一的还是每次都存储在同一位置的内存中并且只是被引用?大量的零空间占用了大量的空间吗?一个充满空值的表是否占用与具有相同大小的int值的表相同的空间量?

这是针对Sql server的.

sql sql-server null

4
推荐指数
1
解决办法
3370
查看次数

SQL Server中为NULL时的位数据类型大小

SQL Server中的位数据类型是最小的数据类型,它只是一个值为0或1的位.

如果字段已更新为0值,则在硬盘中的该字段中将存储0,如果字段更新为1则将存储在硬盘中.

当它为NULL时它会存储什么?

sql-server bit sqldatatypes

2
推荐指数
1
解决办法
145
查看次数

哪个更好的性能,使未使用的列为null或填入值

我有一个表uniqueidentifier只有一些行使用的列.

以下是一个好主意:

  • 使该列可以为空并使未使用的行'uniqueidentifier为null?
  • 或者不使列可以为空并为所有行填写GUID值?

SELECTuniqueidentifier列上的查询会有任何性能差异吗?那磁盘空间呢?空值是否占用相同的空间量?

sql sql-server

1
推荐指数
1
解决办法
201
查看次数