2.3 选择列的类型
上一节描述了各种可供选择的MySQL的列类型及其属性,以及它们可存储的各种值,所占用的存储空间等等。但是在实际创建一个表时怎样决定用哪些类型呢?本节讨论在做出决定前应考虑的各种因素。最常用的列类型是串类型。可将任何数据存储为串,因为数和日期都可以串的形式表示。但是为什么不将所有列都定义为串从而结束这里的讨论呢?让我们来看一个简单的例子。假定有一些看起来像数的值。可将它们表示为串,但应该这样做吗?这样做会发生什么事?
有一桩事不可避免,那就是可能要使用更多的空间,因为较串来说,数的存储更为有效。我们可能已经注意到,由于数和串处理方式的不同,查询结果也有所不同。例如,数的排序与串的排序就有所不同。数2 小于数11,但串2按字典顺序大于 11。可用如下数值内容的列来搞清这个问题:
将零加到该列强制得出一个数值,但是这样合理吗?一般可能不合理。将该列作为数而不是串具有几个重要的含义。它对每个列值实施串到数的转换,这是低效的。而且将该列的值转换为...[ 查看全文 ]