oracle表名最大长度6,Oracle中表名的最大长度是多less?

在Oracle 12.2及更高版本中,最大对象名称长度是128个字节。

在Oracle 12.1及更高版本中,最大对象名称长度是30个字节。

教一个人钓鱼

注意数据types和大小

>describe all_tab_columns VIEW all_tab_columns Name Null? Type ----------------------------------------- -------- ---------------------------- OWNER NOT NULL VARCHAR2(30) TABLE_NAME NOT NULL VARCHAR2(30) COLUMN_NAME NOT NULL VARCHAR2(30) DATA_TYPE VARCHAR2(106) DATA_TYPE_MOD VARCHAR2(3) DATA_TYPE_OWNER VARCHAR2(30) DATA_LENGTH NOT NULL NUMBER DATA_PRECISION NUMBER DATA_SCALE NUMBER NULLABLE VARCHAR2(1) COLUMN_ID NUMBER DEFAULT_LENGTH NUMBER DATA_DEFAULT LONG NUM_DISTINCT NUMBER LOW_VALUE RAW(32) HIGH_VALUE RAW(32) DENSITY NUMBER NUM_NULLS NUMBER NUM_BUCKETS NUMBER LAST_ANALYZED DATE SAMPLE_SIZE NUMBER CHARACTER_SET_NAME VARCHAR2(44) CHAR_COL_DECL_LENGTH NUMBER GLOBAL_STATS VARCHAR2(3) USER_STATS VARCHAR2(3) AVG_COL_LEN NUMBER CHAR_LENGTH NUMBER CHAR_USED VARCHAR2(1) V80_FMT_IMAGE VARCHAR2(3) DATA_UPGRADED VARCHAR2(3) HISTOGRAM VARCHAR2(15)

DESCRIBE all_tab_columns

将显示一个TABLE_NAME VARCHAR2(30)

注意VARCHAR2(30)意味着一个30字节的限制,而不是30个字符的限制,因此,如果您的数据库被configuration/设置为使用多字节字符集可能会有所不同。

麦克风

对,但只要你使用ASCII字符,即使是一个多字节字符集仍然会给出正好30个字符的限制…所以除非你想把你的心和微笑的猫在你的数据库名称你罚款…

30个字符(字节,真的,如前所述)。

但不要相信我; 试试这个为你自己:

SQL> create table a23545678901234567890123456789 (my_id number); Table created. SQL> create table a235456789012345678901234567890(my_id number); ERROR at line 1: ORA-00972: identifier is too long

在我正在处理的10g数据库中,我知道表名最多为30个字符。 无法告诉你列名的长度是什么(但是我知道它是> 30)。

Oracle数据库对象名称的最大长度是30个字节 。

对象名称规则: http : //docs.oracle.com/database/121/SQLRF/sql_elements008.htm

最大名称大小为30个字符,因为数据字典只允许存储30个字节

我正在使用Oracle 12c 12.1。 但是,似乎不允许列/表名超过30个字符。

在12c中虽然all_tab_columns对于Table_Name来说VARCHAR2(128),但它不允许超过30个字节的名字。

在Oracle 12.2 ,可以使用内置常量ORA_MAX_NAME_LEN ,设置为128个字节(按照12.2)。在Oracle 12.1之前,最大大小为30个字节。

表和列名称的最大长度是128个字节或128个字符。 此限制适用于使用sybase数据库用户。 我彻底validation了这个答案,所以我已经自信地发布了这个答案。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值