2015-05-07 11 views
9

Chcę przesłać niektóre dane z UAT DB do DEV DB. Gdy próbuję to zrobić z funkcji eksportu w SQL Developer, wystąpił błąd File C:\Users\xxx\export.sql was not opened because it exceeds the maximum automatic open sizeJak eksportować dużą ilość danych przy użyciu dewelopera sql - Oracle

Jak mogę skopiować dane UAT do DEV?

ORACLE Version 12C 
SQL Developer Version 4.0.0.13 
+0

Czy na pewno chcesz to zrobić za pomocą * programisty SQL *? Są lepsze narzędzia bardziej dostosowane do takiego zadania. –

+2

@ RenéNyffenegger jakie są dostępne narzędzia? –

Odpowiedz

10

znaleźć poniżej odpowiedź z forum SQL Developer:

Wydaje się, że „maksymalna automatyczne otwarte wielkość” jest zakodowany do wartości 500000 (bajtów, wierzę) bez możliwości obejścia go. Ograniczając to do , pobieramy w zarodku wszelkie potencjalne skargi Java OutOfMemory po próbie otwarcia ogromnego pliku.

Aby wyświetlić plik z poziomu programisty SQL pomimo tego ograniczenia, wystarczy użyć menu Plik | Otwórz. W przypadku tych ogromnych plików użyj zewnętrznego edytora . A jeśli nie chcesz automatycznie otwierać plików w celu usunięcia okna dialogowego z ostrzeżeniem, użyj Narzędzia | Preferencje | Baza danych | Eksportuj/wyświetl opcje DDL i usuń zaznaczenie pola "Otwórz plik Sql po wyeksportowaniu".

Czy jesteś pewien, że plik eksportu nie zawiera wszystkich wstawianych wierszy? To byłby błąd, chyba że trafisz w warunek OutOfMemory lub dysk pełny . Właśnie wypróbowałem twój scenariusz na 55000 tabeli wiersza, który wyprodukował export.sql około 20MB. Uwzględniono wszystkie wiersze.

Pozdrawiam, Gary Graham SQL Developer zespołu

i jako podsumowanie, to zasugerował, że deweloper SQL nie jest najlepszym narzędziem, aby otworzyć duży rozmiar pliku danych.

nadzieję, że odpowiedź Gary poprowadzi Cię w pewnym stopniu.

Jeśli trzeba zorientować się pewnych narzędzi, które można otwierać dużych plików, to sprawdzić LINK

+0

Zanim otworzę plik sql, chcę pobrać dane z tabeli. Tutaj mam teraz błąd. –

+0

dlaczego nie zapytanie zbioru danych przez zestaw i eksport, jeśli tak jest? –

1

Jeśli chcesz przenosić duże ilości danych (lub niewielkich ilościach, zbyt) z jednej bazy do drugiej, powinieneś rozważyć narzędzia, które zostały specjalnie zaprojektowane do takich zadań.

Przede wszystkim spójrz na data pump. Ma jednak pewną krzywą uczenia się.

exp oraz i imp (również przez Oracle) są nieco łatwiejsze w obsłudze, ale są starsze i nie tak silne jak pompy danych.

Możesz również zajrzeć do SQL*Plus copy command.

3

Wystąpił ten błąd podczas eksportowania bazy danych w formacie insert, wybierając format ładowania na ekranie 1 Export wizard naprawiono problem.

Jest to prawdopodobnie spowodowane tym, że format insert tworzy pojedynczy skrypt SQL z danymi DDL i danymi jako instrukcjami wstawiania.Tak więc cała baza danych jest zrzucana w jednym pliku skryptu.

loader Opcja produkuje wiele plików: plik kontrolny, plik danych i pliki sql. I są oddzielne pliki dla każdej tabeli. W rezultacie eksport będzie składał się z setek plików i żaden plik nie osiągnie limitu rozmiaru.

Nie może to jednak działać z pojedynczymi tabelami z bardzo dużymi ilościami danych, ponieważ plik danych tej tabeli osiągnąłby limit.

0

Możesz wypróbować różne opcje, takie jak poniższe.

W programie dla programistów SQL, po kliknięciu prawym przyciskiem myszy na tabeli i kliknięciu eksportu zostanie uruchomiony kreator eksportu, w którym można wybrać opcję "Zapisz jako" - "oddzielne pliki", które będą eksportować dane w tym samym pliku SQL. LUB możesz zmienić typ formatu tego samego kreatora na CSV, który wyeksportuje dane w formacie CSV.

0

Istnieje sztuczka, aby skopiować dużą porcję danych (od programisty SQL) do arkusza Excela.

Kroki, których należy przestrzegać: Kliknij prawym przyciskiem myszy ---> eksportuj dane ----> wybierz typ formatu jako "Tekst" ---> wybierz typ jako "Schowek" ----> otwórz arkusz Excela i spróbuj wkleić, pamiętając o tym poniżej:

Następnie wklej dane UWAGA: ** Nie wklejaj danych w pierwszej komórce programu Excel. Ctrl + v w dowolnej z kolumn **

To zadziała.

Dzięki

Powiązane problemy