Первый шаг с JavaDB
Статьи -> Программирование -> Java
Первый шаг с JavaDB
v:1.0 18.08.2012
SmartyIT - Каталог статей для программистов
JavaDB - это очень простая и легкая СУБД, которая не требует ни администрирования, ни специальной тонкой настройки.
Однако при всей свой простоте это вполне себе достойная реляционная СУБД, которая очень часто существенно облегчает жизнь Java-разработчику.
Часто надо временно "сбросить на диск" структурированные файлы. Не самому же в самом деле разрабатывать алгоритмы для сохранения/загрузки таких структур на
диск. В то же время применение даже MySQL выглядит как "стрельба из пушки по воробьям", в таких случаях JavaDB отличное решение.
JavaDB входит в состав JDK, и по умолчанию устанавливается с ним. Ниже я приведу последовательность самых первых и простых действий...
По умолчанию JavaDB устанавливается в каталог JDK, у меня на Windows7 она оказалась здесь:
C:\Program Files\Java\jdk1.7.0_05\db
Первым делом устанавливаем переменную окружения DERBY_HOME
DERBY_HOME "C:\Program Files\Java\jdk1.7.0_05\db"
После установки DERBY_HOME можно запускать "браузер СУБД", некий аналог sqlplus для Oracle.
В документации написано это делать так:
ijЯ ничего кроме ошибки не получил:
Files\Java\jdk1.7.0_05\db""=="" was unexpected at this time.С ходу победить ее не смог, кто знает подскажите в чем дело.
В документации описан еще один способ, он-то у меня и заработал:
java -jar %DERBY_HOME%\lib\derbyrun.jar ijРазумеется, путь к Java должен быть прописан в переменной Path, ну или надо полный путь задать.
В запущенном "браузере СУБД", а это по сути командная строка (похожая с виду на sqlplus Oracle), можно создать новую базу данных такой командой:
CONNECT 'jdbc:derby:firstdb;create=true';Забавно, в JavaDB нет специальной команды "CREATE DATABASE", если базы в момент подключения нет, она создастся сама, для этого и нужен параметр create=true.
В результате работы CONNECT на жестком диске в текущем каталоге создастся каталог firstdb, в котором и будет лежать база данных.
СУБД готова к работе, давайте создадим пробную таблицу:
create table SUPPLIERS (SUP_ID integer NOT NULL, SUP_NAME varchar(40) NOT NULL, STREET varchar(40) NOT NULL, CITY varchar(20) NOT NULL, STATE char(2) NOT NULL, ZIP char(5), PRIMARY KEY (SUP_ID));А теперь заполним ее:
insert into SUPPLIERS values(49, 'Superior Coffee', '1 Party Place', 'Mendocino', 'CA', '95460'); insert into SUPPLIERS values(101, 'Acme, Inc.', '99 Market Street', 'Groundsville', 'CA', '95199'); insert into SUPPLIERS values(150, 'The High Ground', '100 Coffee Lane', 'Meadows', 'CA', '93966'); insert into SUPPLIERS values(456, 'Restaurant Supplies, Inc.', '200 Magnolia Street', 'Meadows', 'CA', '93966'); insert into SUPPLIERS values(927, 'Professional Kitchen', '300 Daisy Avenue', 'Groundsville', 'CA', '95199');А теперь посмотрим, что получилось:
select * from SUPPLIERS;
JavaDB можно легко создавать прямо из приложения и не напрягать конечного пользователя дополнительными сложностями инсталляций, настройкой инстанции, импортом скриптов и т.д.
Еще один пример использования JavaDB можно посмотреть здесь.
Внимание.
Комментировать могут только зарегистрированные пользователи.
Возможно использование следующих HTML тегов: <a>, <b>, <i>, <br>.