CreateDatabase

CreateDatabase( param_object )
CreateDatabase( param_object )
CreateDatabase( param_object )
CreateDatabase( param_object )
create_database( param_object )
CreateDatabase( param_object )

Description

The CreateDatabase function adds a new database to the cluster with the specified parameters. It requires an admin key for authentication.

Parameters

Argument Type Definition and Requirements

param_object

The param_object fields are described below.

param_object

Field Name Field Type Definition and Requirements

name

The name of a database. Databases cannot be named any of the following reserved words: events, set, self, documents, or _.

data

Optional - A JSON object to contain user-defined metadata for the database. It is provided for the developer to store information at the database level.

priority

Optional - A relative weight between 1 and 500, inclusive, indicating how many resources this database is allowed to utilize. Defaults to 1. A higher number means more resources.

The priority option is deprecated as of release 2.10.0. You should avoid specifying priority. In some future Fauna release, priority will be removed. See Deprecations for more details.

Returns

An object containing the metadata of CreateDatabase operations.

Field Name Field Type Definition and Requirements

ref

The reference is an automatically generated unique identifier for the database that was created.

name

The name of the database just created.

ts

The timestamp, with microsecond resolution, associated with the creation of the database.

data

Included only when specified during database creation. An object containing user-defined metadata for this database.

global_id

A read-only string that provides a globally-unique identifier for this database.

Examples

The following query creates a database named "db-next" and returns the reference to the database, the name of the database, and the time the database was created:

client.Query(CreateDatabase(Obj("name", "db-next")));
{
  "ref": { "@ref": "databases/db-next" },
  "class": { "@ref": "databases" },
  "ts": 1509244539938619,
  "name": "db-next"
}
curl https://db.fauna.com/ \
    -u fnAChGwBacACAEZtRZFDXpyjIvq-sln34m-va4Km: \
    -d '{ "create_database": { "object": { "name": "db-next" } } }'
HTTP/1.1 201 Created
{
  "resource": {
    "ref": { "@ref": "databases/db-next" },
    "class": { "@ref": "databases" },
    "ts": 1509244539938619,
    "name": "db-next"
  }
}
result, _ := client.Query(f.CreateDatabase(f.Obj{"name": "db-next"}))

fmt.Println(result)
map[ref:{db-next 0xc42021caa0 <nil>} ts:1509244539938619 name:db-next]
System.out.println(
      client.query(
            CreateDatabase(Obj("name", Value("db-next")))
      ).get());
{
  ref: ref(id = "db-next", collection = ref(id = "databases")),
  ts: 1526674566784752,
  name: "db-next"
}
client.query(q.CreateDatabase({ name: 'db-next' }))
.then((ret) => console.log(ret))
{ ref: Ref(id=db-next, collection=Ref(id=databases)),
  ts: 1527274824500534,
  name: 'db-next' }
client.query(q.create_database({"name": "db-next"}))
{
  "ref": { "@ref": "databases/db-next" },
  "class": { "@ref": "databases" },
  "ts": 1509244539938619,
  "name": "db-next"
}
client.query(CreateDatabase(Obj("name" -> "db-next")))
{
  "ref": { "@ref": "databases/db-next" },
  "class": { "@ref": "databases" },
  "ts": 1509244539938619,
  "name": "db-next"
}

Is this article helpful? 

Tell Fauna how the article can be improved:
Visit Fauna's forums or email docs@fauna.com

Thank you for your feedback!