前端之家收集整理的这篇文章主要介绍了
sql – 为什么我们关心数据类型?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
具体来说,在关系
数据库管理系统中,为什么我们需要在创建时知道列的数据类型(更有可能是对象的
属性)?
对我来说,数据类型感觉像一个优化,因为一个数据点可以通过多种方式实现.将语义角色和约束分配给数据点不是更好,然后让引擎内部检查并优化哪些数据类型最适合用户?
我怀疑这是重的举重,为什么要问用户更容易,而不是做这些工作.
你怎么看?我们去哪里?这是一个现实的期望吗?还是我有错误的假设?
你是对的:将数据类型分配给列是一个实现细节,与
数据库引擎背后的集合理论或微积分无关.作为一个理论模型,
数据库应该是“无类型”的,能够存储我们抛出的任何东西.
但是我们必须在实际的计算机上实现这个数据库,实际上是有限制的.从性能的角度来看,让计算机动态地尝试找出如何最好地存储数据是不现实的.
例如,假设你有一个表存储几百万个整数.计算机可以正确地确定它应该将每个数据作为一个整数值存储.但是如果您有一天突然尝试在该表中存储一个字符串,数据库引擎是否停止所有操作,直到将所有数据转换为更一般的字符串格式?
不幸的是,指定数据类型是一个必要的邪恶.
原文链接:https://www.f2er.com/mssql/82426.html