In OrientDB you can use a Graph Database in schema-less mode, or you can enforce strict data model through a schema. When using a schema, you can use it on all data or only define constraints on certain fields, allowing users to add custom fields to records.
The schema mode you use is defined at a class-level. So, for instance you might have a class
Employee that is schema-full with a class
EmployeeInformation that is schema-less.
- Schema-Full: Enables the strict-mode at a class level and sets all fields to mandatory.
- Schema-Less: Creates classes with no properties. By default, this is non-strict-mode, allowing records to have arbitrary fields.
- Schema-Hybrid: Creates classes and defines some of the fields, while leaving the records to define custom fields. Sometimes, this is also called Schema-Hybrid.
NOTE: Bear in mind that any changes you make to the class schema are not transactional. You must execute them outside of a transaction.
To access the schema, you can use either SQL or the API. The examples in the following pages use the Java API.
For more information, see Blog: Using Schema with Graphs