Jaka jest maksymalna długość nazwy tabeli w Oracle?
Jaka jest maksymalna długość nazwy tabeli i nazwy kolumny w Oracle?
12 answers
W Oracle 12.2 i nowszych maksymalna długość nazwy obiektu wynosi 128 bajtów.
W Oracle 12.1 i poniżej maksymalna długość nazwy obiektu wynosi 30 bajtów.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-14 03:29:10
Naucz człowieka łowić ryby]}
Zwróć uwagę na typ i rozmiar danych
>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)
Opisz wszystkie_tab_kolumny
Wyświetli table_name VARCHAR2 (30)
Uwaga VARCHAR2 (30) oznacza ograniczenie do 30 bajtów, a nie ograniczenie do 30 znaków i dlatego może być inne, jeśli baza danych jest skonfigurowana / ustawiona tak, aby używać wielobajtowego zestawu znaków.
Mike
Racja, ale tak długo, jak używasz znaków ASCII, nawet wielobajtowy zestaw znaków nadal dawałby ograniczenie dokładnie do 30 znaków... więc jeśli nie chcesz włożyć serduszek i uśmiechniętych kotów w Twoje imię, twoja grzywna...
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-12-12 19:22:39
30 char (bajtów, naprawdę, jak już zostało powiedziane).
Ale nie ufaj mi; spróbuj tego dla siebie:
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
Aktualizacja: jak wspomniano powyżej, w Oracle 12.2 i późniejszych maksymalna długość nazwy obiektu wynosi teraz 128 bajtów.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-28 10:00:04
Reguły nazewnictwa obiektów schema mogą być również używane:
Http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/sql_elements008.htm#sthref723
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-04-16 20:10:40
Na Oracle 12.2
, możesz użyć wbudowanej stałej, ORA_MAX_NAME_LEN
,
Ustaw na 128 bajtów (jak na 12.2)
Przed Oracle 12.1
maksymalny rozmiar wynosił 30 bajtów.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-27 16:48:49
W bazie danych 10g, z którą mam do czynienia, wiem, że nazwy tabel są maksymalnie 30 znaków. Nie mogę powiedzieć, jaka jest długość nazwy kolumny (ale wiem, że jest > 30).
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-04-16 15:04:53
Oracle database object names maksymalna długość to 30 bajtów .
Zasady Nazw Obiektów: http://docs.oracle.com/database/121/SQLRF/sql_elements008.htm
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-08 09:31:49
Maksymalny rozmiar nazwy to 30 znaków ze względu na słownik danych, który pozwala na przechowywanie tylko 30 bajtów
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-01-18 11:10:54
Pracuję nad Oracle 12c 12.1. Jednak wydaje się, że nie pozwala na więcej niż 30 znaków dla nazw kolumn/tabel.
Przeczytaj stronę oracle, która wspomina o 30 bajtach. https://docs.oracle.com/database/121/SQLRF/sql_elements008.htm#SQLRF00223
W 12c chociaż all_tab_columns mówią VARCHAR2 (128)dla Table_Name, to nie pozwala na więcej niż 30 bajtów nazwy.
Znalazłem inny artykuł o 12c R2, który wydaje się pozwalać na to do 128 postaci. https://community.oracle.com/ideas/3338
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-06 08:50:45
Maksymalna długość nazwy tabeli i kolumny wynosi 128 bajtów lub 128 znaków. Limit ten dotyczy korzystania z użytkowników bazy danych sybase. Dokładnie zweryfikowałem tę odpowiedź, tak, że z pewnością zamieściłem tę odpowiedź.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-08 11:00:53