ArangoDB是一個多模型數據庫,它支持文檔、圖形和鍵值數據模型。在ArangoDB中,你可以通過定義自定義數據類型來擴展其內置的文檔模型。自定義數據類型允許你為文檔中的字段指定特定的類型,以及這些類型可以具有的額外屬性和方法。
以下是在ArangoDB中自定義數據類型的基本步驟:
POST /_api/type
請求來創建一個新的自定義數據類型。你需要提供數據類型的名稱和定義。定義可以包括字段的名稱、類型以及可選的驗證函數。示例請求:
POST /_api/type/_myCustomType
Content-Type: application/json
{
"name": "_myCustomType",
"properties": {
"name": { "type": "string" },
"age": { "type": "int" },
"isStudent": { "type": "bool" }
},
"validators": {
"age": { "min": 0, "max": 120 }
}
}
在這個例子中,我們創建了一個名為_myCustomType
的自定義數據類型,它有一個字符串類型的name
字段,一個整數類型的age
字段,以及一個布爾類型的isStudent
字段。我們還為age
字段定義了一個驗證器,以確保年齡在0到120之間。
_type
字段中指定自定義數據類型的名稱,并為每個字段提供相應的值。示例請求:
POST /_api/document
Content-Type: application/json
{
"_key": "person123",
"_type": "_myCustomType",
"name": "Alice",
"age": 30,
"isStudent": false
}
在這個例子中,我們創建了一個使用_myCustomType
的自定義數據類型的文檔。
請注意,自定義數據類型在ArangoDB中是靜態的,這意味著一旦創建,你就不能更改其結構(例如,添加或刪除字段)。如果你需要更靈活的數據模型,你可能需要考慮使用其他支持動態文檔模型的數據庫系統。