作者TeemingVoid (TeemingVoid)
看板Database
标题[系统] 为什麽 ansi_padding 非死不可?
时间Sat Feb 18 19:12:21 2012
这篇文章之後,我应该不会再针对 ansi_padding 这个系列再PO文。
因为,感觉上我讲的已经开始重复鬼打墙了,再说也还是一样的事。
当然啦! 还是欢迎大家指教,我会听,但不会再写。:)
事情的起因是ronlee543问到为什麽 ansi_padding 一定要是ON,这
样不是会多一些不必要的空白吗?
TeemingVoid: 预设为 ON 比较有弹性,要不要空白都顺我们的意。
trueQoo: 这个选项是「向前相容」。
trueQoo: 让 char 与 varchar 有别区别。
Adonisy: 所以 ansi_padding 之前是为了向前相容无误, 但以後拿
掉也很正常,只是不用期待他何时拿掉
说实在的,我想给原PO一个拍拍,因为,我们说了半天,都没有回答
他的问题: 究竟有什麽理由,ansi_padding 一定不可以是 OFF 呢?
我赞成 ansi_padding 设为 ON,所以说了一个使用上的理由,自我
说服:好吧!就听微软的,反正这样比较好。
trueQoo说出 ansi_padding 出现的缘由。但我认为「前向相容」绝
对不是这个选项该退出江湖的原因,因为 ansi_padding 跟其他选项
不同,设为 OFF,建立的那个资料表就是会砍掉结尾空白,就算你设
回ON,那个表还是会砍掉结尾空白。偏偏这个选项又这麽多年了,所
以如果我们重视「前向相容」,反而应该留着这个选项。
Adonisy的回文内容,在我的理解,是说这个选项既然有生,自然有灭,
完成阶段任务後,随时可以除役。但是,我还是认为这个选项在完成
其阶段任务的期间,恐怕也创造了一些「历史共业」。
在我认为,上述事项都不足以是 ansi_* 非死不可的关键。我们三人,
没有一人提出一个无可反驳的原因,说明为什麽 ansi_padding 一定只
能是 ON。
究竟有什麽重大的危害,所以 ansi_padding 一定要是 ON? 如果有,
不会过了十多年都没事。如果没有,为什麽没事要改成只能 ON?
经过这几天,我反而想问跟ronlee543一样的问题,为什麽ansi_padding
非死不可? 想设成 OFF 的,就用 OFF,免去 ASP 年代老是 string too
long... truncated 的错误讯息。想设成 ON 的,就用 ON 啊! 各人造
业各人担。
有什麽理由为什麽 ansi_padding 一定只能是 ON 呢?
我会听,但不会再说了,谢谢大家喔! ^_^
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.41.100.79
※ 编辑: TeemingVoid 来自: 114.41.100.79 (02/18 20:18)
1F:推 ronlee543:谢谢您的热心,完全讲出了我心中的话 02/20 10:04