Jaka jest maksymalna długość nazwy tabeli i nazwy kolumny w Oracle?
oracle
name-length
robertkroll
źródło
źródło
Naucz człowieka łowić ryby
Zwróć uwagę na typ danych i rozmiar
źródło
describe user_mview_logs
powraca,LOG_TABLE VARCHAR2(128)
ale jeśli spróbujesz czegoś, co zbliża się do 30 lub więcej znaków dla zmaterializowanej nazwy dziennika widoku, uzyskasz dość intrygujące wyniki.OPISUJ wszystkie kolumny_tab
pokaże TABLE_NAME VARCHAR2 (30)
Uwaga VARCHAR2 (30) oznacza ograniczenie 30 bajtów, a nie ograniczenie 30 znaków, a zatem może być inne, jeśli baza danych jest skonfigurowana / skonfigurowana do używania zestawu znaków wielobajtowych.
Mikrofon
źródło
Tak, ale tak długo, jak używasz znaków ASCII, nawet zestaw znaków wielobajtowych nadal dawałby ograniczenie dokładnie 30 znaków ... więc jeśli nie chcesz wkładać serc i uśmiechniętych kotów w swoje nazwy DB, to dobrze ...
źródło
30 znaków (tak naprawdę, jak powiedziano).
Ale nie ufajcie mi; spróbuj tego sam:
Zaktualizowano: jak stwierdzono powyżej, w Oracle 12.2 i nowszych maksymalna długość nazwy obiektu wynosi teraz 128 bajtów.
źródło
Przydatne mogą być również reguły nazewnictwa obiektów schematu:
http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/sql_elements008.htm#sthref723
źródło
W bazie danych 10 g, z którą mam do czynienia, wiem, że nazwy tabel mają maksymalnie 30 znaków. Nie mogę powiedzieć, jaka jest długość nazwy kolumny (ale wiem, że to> 30).
źródło
Maksymalny rozmiar nazwy wynosi 30 znaków ze względu na słownik danych, który pozwala na przechowywanie tylko 30 bajtów
źródło
On
Oracle 12.2
, można użyć wbudowanej w stałym,ORA_MAX_NAME_LEN
ustaw na 128 bajtów (zgodnie z 12,2) przedOracle 12.1
maksymalny rozmiar wynosi 30 bajtów.źródło
Maksymalna długość nazw obiektów bazy danych Oracle wynosi 30 bajtów .
Reguły nazw obiektów: http://docs.oracle.com/database/121/SQLRF/sql_elements008.htm
źródło
Pracuję na Oracle 12c 12.1. Nie wydaje się jednak, aby dopuszczał więcej niż 30 znaków dla nazw kolumn / tabel.
Przeczytaj stronę wyroczni, która wymienia 30 bajtów. https://docs.oracle.com/database/121/SQLRF/sql_elements008.htm#SQLRF00223
W 12c, chociaż kolumny all_tab_columns zawierają VARCHAR2 (128) dla Table_Name, nie pozwalają na nazwę większą niż 30 bajtów.
Znaleziono kolejny artykuł o 12c R2, który wydaje się pozwalać na to do 128 znaków. https://community.oracle.com/ideas/3338
źródło
Maksymalna długość nazwy tabeli i kolumny wynosi 128 bajtów lub 128 znaków. Ten limit dotyczy korzystania z użytkowników bazy danych sybase. Dokładnie zweryfikowałem tę odpowiedź, więc opublikowałem tę odpowiedź z przekonaniem.
źródło