What is the maximum length of a table name in Oracle? For bonus points, what is the maximum length of a column name?
-
In the 10g database I'm dealing with, I know table names are maxed at 30 characters. Couldn't tell you what the column name length is (but I know it's > 30).
Justin Cave : Column names are limited to 30 characters as well, not > 30Harper Shelby : Ah, I see that (in Mark Brady's answer). I could've sworn I saw one longer, but obviously I was wrong. -
I believe the maximum name size is 30 characters, because all table/index names must be stored in the data dictionary and that storage is only allocated for 30 characters
EDIT-
The same goes for the column name
TStamper : why the downvote, for the correct answer?TStamper : Wow...lol..sorry been a member for a few months now and only gave one downvote and it was to spamTStamper : I never assumed you downvoted me,the comment was for all, I didnt comment on your answer, so I never suspected you. sorry you took it that way -
Teach a man to fish
Notice the data-type and size
>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)
-
The schema object naming rules may also be of some use:
http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/sql_elements008.htm#sthref723
-
DESCRIBE all_tab_columns
will show a TABLE_NAME VARCHAR2(30)
Note VARCHAR2(30) means a 30 byte limitation, not a 30 character limitation, and therefore may be different if your database is configured/setup to use a multibyte character set.
Mike
-
Right, but as long as you use ASCII characters even a multibyte character set would still give a limitation of exactly 30 characters... so unless you want to put hearts and smiling cats in you're DB names your fine...
Maarten
Ed Daniel : I can DO that? Cool! *shoots self*
0 comments:
Post a Comment