Zielony Smok - logo witryny

Apache Derby: atrybuty tworzenia bazy

databaseName=nazwa_bazy

Atrybut używany dla podania nazwy bazy danych.

Jeśli nazwa bazy danych podana jest w adresie bazy i w atrybucie to połączenie nastąpi z bazą w adresie:

  • jdbc:derby:baza_danych;databaseName=baza_danych1

W takim przypadku nastąpi połączenie z bazą ‘baza_danych’.

W tym atrybucie można podać podprotokół:

  • jdbc:derby:;databaseName=memory:baza_danych

create=true

Łączy z podaną bazą danych – jeśli baza już istnieje albo tworzy bazę danych i łączy z nową bazą danych – jeśli baza nie istnieje.

Jeśli baza zostanie utworzona, a połączenie z tą bazą nie zostanie nawiązane, to utworzona baza danych nie zostanie usunięta.

Jeśli autentykacja i autoryzacja SQL są ustanowione tylko właściciel bazy może bazę zamknąć, usunąć, zaszyfrować, ponownie zaszyfrować z nowym hasłem lub kluczem lub wykonać pełny ‘upgrade’.

Jeśli autentykacja nie jest ustanowiona, i żaden użytkownik nie jest podany , właścicielem bazy staje się ‘APP’. ‘APP’ jest jednocześnie nazwą domyślnego schematu.

Aby użyć ‘create’ musi być podana nazwa bazy danych w samym połączeniu albo jako atrybut databaseName=baza_danych

create – tworzy bazę danych jako podfolder w folderze systemu Derby:

  • jdbc:derby:baza_danych;create=true;
  • jdbc:derby;databaseName=baza_danych;create=true

Przykłady

Przykłady w klasie R110A oraz R110B.

Klasa R100A.java
package aderby.attributes.create;

import aderby.DerbyUtil;

import java.sql.*;

public class R110A {
    private static final String baza = "C:/Przyklady/r110A";

    public static void main(String[] args) {
        DerbyUtil.startDerbyEngine(DerbyUtil.embdriver);
        Connection con = null;
        try {
            con = DriverManager
                    .getConnection("jdbc:derby:C:/Przyklady/r110A;create=true");
        } catch (SQLException e) {
            e.printStackTrace();
        }
        DerbyUtil.close(con);
        DerbyUtil.shutdownEmbeddedDB(baza);
        DerbyUtil.shutdownDerbyEngine();
    }
}
Klasa R110B.java
package aderby.attributes.create;

import aderby.DerbyUtil;

import java.sql.*;

public class R110B {
    private static final String baza = "C:/Przyklady/r110B";

    public static void main(String[] args) {
        DerbyUtil.startDerbyEngine(DerbyUtil.embdriver);
        Connection con = null;
        try {
            con = DriverManager.getConnection(
                    "jdbc:derby:;databaseName=C:/Przyklady/r110B;create=true");
        } catch (SQLException e) {
            e.printStackTrace();
        }
        DerbyUtil.close(con);
        DerbyUtil.shutdownEmbeddedDB(baza);
        DerbyUtil.shutdownDerbyEngine();
    }
}

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.