Apache Derby: typ danych TIME
Opis
Zestaw liczb określających godzinę doby.
Składnia
TIME
Odpowiadający typ Java
java.lang.Time
Odpowiadający typ JDBC
java.sql.Types.TIME
Zakres
Czas może być podana jako:
- hh:mm[:ss]
- hh.mm[.ss]
- hh[:mm] {AM|PM}
’hh’ – oznacza godzinę i może być 1-cyfrowa lub 2-cyfrowa
’mm’ – oznacza minuty i musi 2-cyfrowa.
’ss’ – oznacza sekundy i musi być 2-cyfrowa.
Ograniczenia
Derby akceptuje również czas podawane w formacie specyficznym dla danej lokalizacji na serwerze bazy danych, ale w przypadku wątpliwości formaty wbudowane mają pierwszeństwo.
Klasa R058_TIME.java
package aderby.types; import aderby.DerbyUtil; import java.sql.*; public class R058_TIME { private static final String baza = "C:/Przyklady/R058"; private static final String skrypt = "aderby/src/resources/sqls/r058.sql"; public static void main(String[] args) { DerbyUtil.startDerbyEngine(DerbyUtil.embdriver); //Utworzenie bazy i wstawienie danych Connection con = DerbyUtil.connectEmbeddedDB(baza, ";create=true"); DerbyUtil.jdbcRunScript(skrypt, con); //pobranie danych Statement stat = null; ResultSet rs = null; try { stat = con.createStatement(); rs = stat.executeQuery("SELECT * FROM plan"); while (rs.next()) { System.out.println(rs.getTime("godzina") + " " + rs.getString("zdarzenie")); } } catch (SQLException e) { e.printStackTrace(); } DerbyUtil.close(rs); DerbyUtil.close(stat); DerbyUtil.close(con); DerbyUtil.shutdownEmbeddedDB(baza); DerbyUtil.shutdownDerbyEngine(); } }
Plik r058.sql
Po uruchomieniu kodu na konsoli zobaczymy:
06:00:00 Pobudka 06:43:00 Wyjazd do pracy 07:20:00 Przyjazd do pracy 08:00:00 Rozpoczęcie pracy 13:00:00 Koniec pracy
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.