5

Zbudowałem model EER w środowisku MySQL Workbench, który przekazuję inżynierowi do utworzenia bazy danych. Inżynieria naprzód działa doskonale, a baza danych jest tworzona z diagramu zgodnie z oczekiwaniami.Jak automatycznie wykonać skrypt lub procedurę MySQL po przeprowadzeniu inżynierii do przodu z modelu

Oprócz tabel, istnieją również pewne procedury składowane (aka Procedury), które zostały uwzględnione w modelu. Te procedury są zaprojektowane tak, aby uruchamiać je tylko raz, zaraz po skonfigurowaniu bazy danych. Automatycznie wstawiają niezbędne dane do tabel.

Moje pytanie brzmi, w jaki sposób można uzyskać zaawansowany proces inżynieryjny, aby automatycznie wywoływać/uruchamiać jedną z tych procedur po utworzeniu tabel.

W tej chwili muszę do przodu inżynier bazy danych, a następnie ręcznie wywołać procedury składowane?

+0

Jestem zdezorientowany: czy chcesz chcieć wykonać procedury składowane lub skrypty? Skąd pochodzą skrypty? –

+1

@MattFenwick, przepisałem to pytanie, aby wyjaśnić. – Spider

+0

Czy naprawdę masz tak wiele procedur przechowywanych, że zbyt wiele zrobić ręcznie? –

Odpowiedz

5

W swoim diagramie EER na stole roboczym kliknij prawym przyciskiem myszy na stół i wybierz tabelę edycji. Spowoduje to otwarcie okienka u dołu za pomocą kilku zakładek. Zakładki to tabela, kolumny, indeksy, klucz obcy itp. Jest tam zakładka o nazwie insert. Ta zakładka umożliwia wstawianie rekordów do bazy danych Model.

Po kliknięciu na kartę wstawiania wyświetli się siatka. Dodaj rekordy, które chcesz wstawić na tej siatce. Upewnij się, że zatwierdziłeś te zapisy:. Zobacz zrzut ekranu na przykład

Workbench Data Insert

Teraz, kiedy do przodu inżynier bazy danych na pierwszym ekranie jest opcja generowania instrukcje wstawiania. Zaznacz opcję inżynier do przodu, a dane, które chcesz wstawić, zostaną zapisane w skrypcie podczas tworzenia modelu. Zapisz skrypt, aby móc go uruchamiać ponownie bez wchodzenia do środowiska roboczego MySQL.

Tick Insert option

nie znalazłem opcji aktualizacji, usuwania lub wykonywania innej manipulacji danych w warsztacie, ale myślę, że to jest to, czego szukasz. UWAGA Aby zaimportować rekordy, nie będziesz mógł tego zrobić poprzez Workbench, nie ma opcji. Możesz zapisać rekordy do pliku. Jednak aby je zaimportować/utworzyć, musisz dodać je po jednym na raz (np. Modelarz). Można jednak wykonać kopię bazy danych MySQL z już zapisanymi danymi. Następnie skopiuj te instrukcje INSERT ze skryptu kopii zapasowej MYSQL do skryptu instalacyjnego.

Kroki byłoby:

  1. Tworzenie bazy danych.

  2. importować pliki z ewidencji setup/config do nowo utworzonej bazy danych

  3. kopii zapasowej bazy danych

  4. Otwórz plik kopii zapasowej i wklej INSERT, którego szukasz do skryptu instalacyjnego stworzonego przez MySQL Workbench

UPDATE:

zrobiłem kilka Experime Po przejściu do skryptu sprawdzającego, który ma zostać wykonany, krokiem w inżynierii naprzód, można również wywołać procedury składowane (jak wspomniano), edytując skrypt. Po zakończeniu zapisz skrypt do pliku i przetestuj.

Nadzieję, że pomaga!

+0

Właśnie dodałem trochę więcej informacji. Proszę sprawdzić! – Namphibian

+0

Dziękuję bardzo za pomoc. Procedura przechowywana generuje 30 000 rekordów, które należy wstawić do bazy danych. Drugi zapełnia kraje i powiązane miasta. Zbiory danych są zbyt duże, aby można je było wstawić ręcznie. Wszelkie dalsze rozwiązania są nadal mile widziane. – Spider

+0

@ Mark Van Wyk tych procedur przechowywanych masz mentod czy one zostały utworzone podczas inżynierii naprzód? – Namphibian