为什么Oracle表/列/索引名称限制为30个字符?
发布时间:2020-12-12 14:58:43 所属栏目:百科 来源:网络整理
导读:我可以理解,很多年前,会有这种限制,但现在肯定这个限制可以很容易地增加。我们有对象的命名约定,但总是有一种情况,我们达到这个极限 – 特别是在命名外键。 有人知道为什么这不是一个更大的尺寸 – 或者它是更大的11g? 显然,答案是它会打破当前没有防
我可以理解,很多年前,会有这种限制,但现在肯定这个限制可以很容易地增加。我们有对象的命名约定,但总是有一种情况,我们达到这个极限 – 特别是在命名外键。
有人知道为什么这不是一个更大的尺寸 – 或者它是更大的11g? 显然,答案是它会打破当前没有防御性编码的脚本。我说这是一个非常令人担忧的事情,Oracle正试图成为数据库,肯定这是你必须不断改进的那种事情,否则你的产品会死亡一千次的削减。 每当我在内部看到这种反对意见时,我认为是时候咬伤子弹了。如果人们运行的脚本在升级Oracle版本时没有检查或维护,那么让他们承受这种选择的后果。为他们提供一个兼容性标志,大小到4000,然后节省我浪费的时间,当我创建对象不断计数到30,以检查名称是“确定”。 我相信这是ANSI标准。编辑: 其实,我认为这是SQL-92标准。 标准的更高版本似乎可以允许128个字符的名称,但Oracle还不支持它(或者部分支持它,因为它允许30个字符。嗯)。 在此页上搜索“F391,长标识符”… http://stanford.edu/dept/itss/docs/oracle/10g/server.101/b10759/ap_standard_sql001.htm (寻找参考) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |