varchar(1)和char(1)在性能上有什么区别吗?哪种RDBMS以不同的方式处理这两种数据类型和大小?
发布于 2010-07-30 15:39:43
在大多数情况下,这种差异可以忽略不计。将你的面向性能的设计努力集中在能带来真正不同的地方,比如表格组合和索引设计。
它有助于将设计工作分为两层:逻辑设计和物理设计。
大部分面向性能的工作都在第二阶段,即物理设计阶段。
在逻辑设计中,灵活性胜过性能。除非它不是这样。
发布于 2014-12-03 18:12:02
在MS SQL中,VARCHAR(1)使用三个字节的存储,而CHAR(1)使用一个字节的存储。
在处理和存储方面,CHAR(1)比VARCHAR(1)更高效。
如果使用可变长度数据,VARCHAR上的盈亏平衡点将是大于3个字符的任何值。
如果使用固定长度,那么CHAR的效率总是要高出两个字节。
参考:http://msdn.microsoft.com/en-gb/library/ms176089.aspx
发布于 2017-11-02 18:46:49
对于Oracle
VARCHAR2(1)和CHAR(1)在所有方面都是相同的。在这种情况下,没有令人信服的理由使用CHAR类型,为了避免混淆,我“只是说不”,即使对于CHAR(1)字段也是如此。
参考:https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:2668391900346844476
https://stackoverflow.com/questions/3368305
复制相似问题