SmallSQL

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 20:45, 4 мая 2019.
SmallSQL
fraimed
Выпущена: 28 марта 2005
Написана на: Java
Операционная система: Любая, поддерживаемая Java
Платформа: x32, x64
Локализация: Английский, Немецкий, Итальянский
Тип ПО: СУБД
Лицензия: GNU LGPL
Веб-сайт http://www.smallsql.de

SmallSQL Database - это 100% чистая DBMS (Database Management System) (Система Управления Базами Данных) Java для настольных приложений. В настоящее время она имеет интерфейс API JDBC 3.0. Эта база данных предназначена только для настольных приложений (автономные приложения). У него нет учетной записи пользователя и нет сетевого интерфейса. Это делает установку и использование очень простым. Вам нужно только добавить файл JAR в путь к классу приложения.


Приступая к работе [1]

Существует два варианта начала работы с СУБД SmallSQL:

Из существующей базы данных

Вы можете преобразовать существующую базу данных с помощью JDbConverter. Это инструмент с открытым кодом для преобразования базы данных из одной СУБД в другую СУБД через JDBC. Вы можете скачать его и преобразовать существующую JDBC базу данных.

Создание базы данных с помощью GUI-инструмента

SmallSQL не имеет такого инструмента, но разработчик рекомендует использовать один из следующих:

  • JDBC Navigator. Это бесплатный графический инструмент Java. После того как вы загрузите его:
    • Выберите меню "Open JDBC Data Source"
      Name: База данных SmallSQL
      Driver Class: smallsql.database.SSDriver
      URL: jdbc:smallsql
      Save, затем Connect
    • Откройте меню "Connection | SQL Window"
    • Введите "CREATE DATABASE db1" и выполните команду, нажав ENTER
    • Закройте соединение
    • Выберите меню "Open JDBC Data Source" и измените URL на jdbc:smallsql:db1
      Save, затем Connect
  • SQuirreL SQL Client. Это GUI-инструмент с открытым исходным кодом на Java. После того как вы загрузите и установите его
    • Создайте новый JDBC Driver
      Name: Small SQL Database
      Example URL: jdbc:smallsql:<db name>
    • Создайте новый Alias
      Name: Small SQL db1
      JDBC Driver: Small SQL
      URL: jdbc:smallsql
      Auto Logon: Yes
    • Подключитесь к "Small SQL db1"
    • Смените вкладку на "SQL"
    • Введите "CREATE DATABASE db1" и выполните это
    • Закройте окно
    • Смените URL на
      JDBC URL: jdbc:smallsql:db1
    • Подключитесь к "Small SQL db1"

Конфигурация JDBC Driver

JDBC Driver class name: smallsql.database.SSDriver
JDBC URL: jdbc:smallsql:<database>, где <database> — абсолютный или относительный путь к базе данных

Пример Java-кода для директории "db1":

Class.forName( "smallsql.database.SSDriver" );
java.sql.Connection con = java.sql.DriverManager.getConnection( "jdbc:smallsql:db1" );

Свойства JDBC URL

Свойство может быть установлено с помощью Property Object при вызове метода DriverManager.getConnection. Или оно может быть добавлен после JDBC URL со знаком вопроса в конце. Множественные свойства разделяются точкой с запятой.

Свойство Стандартное значение Описание
create false Если установлено значение "true", то база данных, определенная URL JDBC, будет создана, в случае отсутствия
dbpath Это свойство переопределяет базу данных в URL JDBC

Примеры JDBC URL

jdbc:smallsql:MyDb?create=true


Создание пустой базы данных

Перед началом работы с базой данных SQL Small вам необходимо создать первую базу данных. Существует три способа создания базы данных:

  1. Вы можете преобразовать существующую базу данных. См. #Приступая к работе.
  2. Используя флаг JDBC URL create=true. База данных будет создана, если она отсутствовала. JDBC URL выглядит следующим образом: jdbc:smallsql:NewDatabase?create=true
  3. Создав подключение к несуществующей базе данных и выполнив команду CREATE DATABASE. Со следующим JDBC URL вы можете создать подключение к несуществующей базе данных: jdbc:smallsql

SQL-синтаксис

Постоянные выражения

Постоянные выражения могут быть использованы в любом месте, где разрешены значения. Вы можете использовать следующий синтаксис:

тип данных пример описание
String 'любое строковое значение'
'Вася'
Строки выделяются одиночными кавычками. Если строка включает кавычку, то вам нужно дублировать кавычки
Binary 0xAB
0x12ad
0x (пустые двоичные данные)
Двоичные данные имеют префикс 0x. Каждый байт отображается с помощью 2 шестнадцатеричных цифр. Вы можете использовать нижние и верхние буквы.
Bit true
false
Timestamp {ts '2003-07-16 12:30:15.000'} Формат: yyyy-mm-dd hh:mm:ss.nnn.
Time {t '12:30:15'} Формат: hh:mm:ss.
Date {d '2003-07-16'} Формат: yyyy-mm-dd.
Integer 1234
67
Integer — целые числа без десятичной точки.
Decimal 12.34 Decimal — числа с десятичной точкой.
Double 1.234E1 Double — числами с показателем.
Money $12
$12.34
Money имеют символ валюты в качестве префикса.
uniqueidentifier '618859EE-7B89-C122-2ED3-12AA54B6FF22'
0xee598861897b22c12ed312aa54b6ff22
GUID может быть записан как строка в кавычках или в двоичной форме из 16 байт.
any NULL NULL значение.


CREATE DATABASE

Создание новой базы данных. База данных в SmallSQL сохраняется как папка с файлом управления. Если вы хотите создать первую базу данных, вы можете подключиться к несуществующей базе данных, выполнив эту команду.

Синтаксис

CREATE DATABASE database_name

Параметры

  • database_name: Имя базы данных. Название совпадает с именем каталога. Каталог создается как подкаталог в текущем рабочем каталоге. Вы также можете указать абсолютный или относительный путь. Если имя каталога включает в себя пробелы, то вам необходимо взять имя в кавычки.

Примеры

CREATE DATABASE c:\MyDatabase
CREATE DATABASE ../MyDatabase
CREATE DATABASE '../My Database'

DROP DATABASE

Удаление базы данных.

Синтаксис

DELETE DATABASE database_name

Параметры

  • database_name: Имя базы данных. SmallSQL проверяет, существует ли каталог и мастер-файл. Затем удаляет каталог со всеми файлами в ней. Каталог ищется относительно текущего каталога. Вы также можете указать абсолютный путь.


USE

Изменение текущего контекста базы данных. Это эквивалентно методу API JDBC connection.setCatalog(x).

Синтаксис

USE database_name

Параметры

  • database_name: Имя новой базы данных. Параметр аналогичен одноименному в описании CREATE DATABASE.


CREATE TABLE

Создание новой таблицы.

Синтаксис

CREATE TABLE table_name (
  <column_def> [,...n]
)
<column_def> ::= { column_name data type } [ DEFAULT constant_expression ] [ IDENTITY ] [ NULL | NOT NULL ]

Параметры

  • table_name: Название новой таблицы.


DROP TABLE

Удаление определенной таблицы и всех данных.

Синтаксис

DROP TABLE table_name

Параметры

  • table_name: Название таблицы.


SELECT

Это - запрос раздела данных из базы данных. Выбор может включать в себя один или несколько столбцов или строк.

Синтаксис

SELECT <column_def> [,...n]
FROM <from list> 
[WHERE <where expression>] 
[[GROUP BY <group list> 
[HAVING <having expression>]] 
[ORDER BY <order list>]


INSERT

Добавление строк в таблицу или в представление.

Синтаксис

INSERT INTO <tablename> [(col1,coll2[,...n])] VALUES(val1,val2[,...n])


DELETE

Удаление строки из таблицы.

Синтаксис

DELETE <tablename> WHERE <where expression>

SmallSQL сегодня

  • Перспектива создания SmallSQL с очень маленьким размером 200-300 КБ для файла JAR
  • SmallSQL должен быть максимально совместим с другими популярными базами данных, такими как MS Access, MS SQL Server, Oracle или BD2
  • На данный момент SmallSQL не имеет сетевого интерфейса, поэтому нельзя совместно использовать базу данных. Это делает среду выполнения SmallSQL очень маленькой и быстрой. Настольное приложение Java не требует сетевого интерфейса
  • Для SmallSQL требуется JDK 1.4.x или выше. Есть перспектива внедрения API JDBC 3.0 в будущей версии, для которой нам нужен JDK 1.4. В настоящее время нет причин, по которым нужно поддерживать более старую версию JDK для совершенно нового продукта

Примечания