我在MySQL数据库中有一个表。表的名称长度超过30个字符 我想在Oracle 11g中创建相同的表,但Oracle只允许名称中最多包含30个字符的表 我无法更改表的名称,使其少于30个字符,因为系统基于这些表,如果我更改名称将花费我很多,所以更改表名不是答案我我在找。
有一个名为user_tables
的表,当我描述表时,它表示table_name
字段的数据类型为varchar2(30)
,因此我尝试更改表并生成{ {1}}但我不能,它给我一个错误说:
ORA-00942:表或视图不存在
我以table_name varchar2(255)
连接。
有谁知道如何解决我的问题?
答案 0 :(得分:15)
所有Oracle标识符限制为30个字符。没有可以让您更改的标识。
答案 1 :(得分:3)
同义词不起作用:source。 30的限制是艰难而快速的。
编辑: 继续研究之后oracle docs除非每个评论都有java,否则即使同义词也不能超过30个字符。
长话短说:你无法在oracle环境中做你想做的事。