Files
Baradb/docs/ru/schema.md

1.3 KiB

Система схем

BaraDB использует проектирование сначала схему с наследованием типов и автоматическими миграциями.

Определение типов

import barabadb/schema/schema

var s = newSchema()

let person = newType("Person")
person.addProperty("name", "str", required = true)
person.addProperty("age", "int32")
s.addType("default", person)

Наследование типов

let employee = newType("Employee")
employee.setBases(@["Person"])
employee.addProperty("department", "str")
s.addType("default", employee)

let resolved = s.resolveInheritance(employee)

Операции со схемой

Diff

let diff = s.diff(oldSchema, newSchema)

Миграции

Изменения схемы отслеживаются и могут генерировать скрипты миграции.

Типы свойств

Тип Описание
str Строка
int32 32-битное целое
int64 64-битное целое
float32 32-битное с плавающей точкой
float64 64-битное с плавающей точкой
bool Булевый
datetime Дата/время
bytes Двоичные данные