Zielony Smok - logo witryny

Apache Derby: atrybuty zamykania bazy i silnika

shutdown=true

Poniższe polecenie zamyka pojedynczą bazę danych:

  • jdbc:derby:nazwa_bazy;shutdown=true

Zamknięte są wszystkie połączenia z bazą danych, a wszystkie dane i transakcje w bazie są zapisane na dysku.

Poniższe polecenie zamyka silnik Derby i wszystkie bazy danych:

  • jdbc:derby:;shutdown=true

Wszystkie połączenia do wszystkich baz danych są zamknięte, a wszystkie dane zapisane na dysku.

Zamknięcie silnika oznacza wyrejestrowanie sterownika Derby i zamknięcie wszystkich połączeń. Aby uruchomić silnik ponownie konieczne jest załadowanie sterownika.

Atrybut shutdown może być użyty z atrybutem deregister, który ustawiony na false zapobiega wyrejestrowaniu sterownika.

Jeśli używana jest autentykacja to do zamknięcia bazy lub silnika potrzebne są atrybuty user i password, czyli login i hasło. Jeśli używana jest autentykacja i autoryzacja SQL – użytkownik musi być właścicielem bazy danych.

Klasa R112.java
package aderby.attributes.shuttdown;

import aderby.DerbyUtil;

import java.sql.*;

public class R112 {
    private static final String baza1 = "C:/Przyklady/r112A";
    private static final String baza2 = "C:/Przyklady/r112B";

    public static void main(String[] args) {
        DerbyUtil.startDerbyEngine(DerbyUtil.embdriver);
        //Utworzenie bazy
        DerbyUtil.connectEmbeddedDB(baza1, ";create=true");
        DerbyUtil.connectEmbeddedDB(baza2, ";create=true");
        try {
            DriverManager
                    .getConnection("jdbc:derby:" + baza1 + ";shutdown=true");
        } catch (SQLException e) {
            System.out.println("baza1 - została zamknięta");
        }
        try {
            DriverManager.getConnection("jdbc:derby:;shutdown=true");
        } catch (SQLException e) {
            System.out.println("silnik bazy danych - został zamknięty");
        }
    }
}

Pliki do ściągnięcia

Aktualny (tworzony narastająco) plik module-info.java

Aktualny (tworzony narastająco) plik DerbyUtil.java

Pliki tworzone narastająco zastępują poprzednie pliki o tej samej nazwie i działają dla wszystkich wcześniej opublikowanych przykładów we wszystkich wpisach w projekcie. W przypadku pliku module-info.java może być potrzebne skreślenie niepotrzebnych wpisów.

.