表名超过30个字符

时间:2012-01-02 13:35:42

标签: sql oracle oracle11g

我在MySQL数据库中有一个表。表的名称长度超过30个字符 我想在Oracle 11g中创建相同的表,但Oracle只允许名称中最多包含30个字符的表 我无法更改表的名称,使其少于30个字符,因为系统基于这些表,如果我更改名称将花费我很多,所以更改表名不是答案我我在找。

有一个名为user_tables的表,当我描述表时,它表示table_name字段的数据类型为varchar2(30),因此我尝试更改表并生成{ {1}}但我不能,它给我一个错误说:

  

ORA-00942:表或视图不存在

我以table_name varchar2(255)连接。

有谁知道如何解决我的问题?

2 个答案:

答案 0 :(得分:15)

所有Oracle标识符限制为30个字符。没有可以让您更改的标识。

答案 1 :(得分:3)

同义词不起作用:source。 30的限制是艰难而快速的。

编辑: 继续研究之后oracle docs除非每个评论都有java,否则即使同义词也不能超过30个字符。

长话短说:你无法在oracle环境中做你想做的事。