# Database Functions on Server

## No Code Example

Use these snippets anywhere you want to in any script.

<figure><img src="https://1224219250-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvYO9I4EKmgDF783aI7J4%2Fuploads%2FYNgIoIs5IQh7qyWPZQga%2Fimage.png?alt=media&#x26;token=bc9b8598-c384-42f3-90ba-3f2e23e653fb" alt=""><figcaption></figcaption></figure>

## Full Docs

### Methods

#### 1. `getSimpleData(collectionName, documentName)`

Retrieves data from a specified collection and document.

* **Arguments**
  * `collectionName` - The name of the collection.
  * `documentName` - The name of the document.
* **Returns**
  * The requested data.
* **Usage**

  ```javascript
  game.getSimpleData('yourCollectionName', 'yourDocumentName').then(data => {
    console.log(data);
  });
  ```

#### 2. `patchSimpleData(collectionName, documentName, fieldMap)`

Updates specific fields in a document.

* **Arguments**
  * `collectionName` - The name of the collection.
  * `documentName` - The name of the document.
  * `fieldMap` - An object containing the fields to be updated.
* **Returns**
  * Confirmation of the update.
* **Usage**

  ```javascript
  const updates = { fieldName: 'newValue' };
  game.patchSimpleData('yourCollectionName', 'yourDocumentName', updates).then(response => {
    console.log(response);
  });
  ```

#### 3. `setSimpleData(collectionName, documentName, fieldMap)`

Sets data for a specific document, overwriting any existing data.

* **Arguments**
  * `collectionName` - The name of the collection.
  * `documentName` - The name of the document.
  * `fieldMap` - An object with the data to be set.
* **Returns**
  * Confirmation of the operation.
* **Usage**

  ```javascript
  const data = { key: 'value' };
  game.setSimpleData('yourCollectionName', 'yourDocumentName', data).then(response => {
    console.log(response);
  });
  ```

#### 4. `deleteSimpleData(collectionName, documentName)`

Deletes a document from a collection.

* **Arguments**
  * `collectionName` - The name of the collection.
  * `documentName` - The name of the document to be deleted.
* **Returns**
  * Confirmation of the deletion.
* **Usage**

  ```javascript
  game.deleteSimpleData('yourCollectionName', 'yourDocumentName').then(response => {
    console.log(response);
  });
  ```

### Additional Information

* All methods are asynchronous and return a promise.
* Ensure proper error handling in your implementation to manage potential exceptions.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://rocket-networking.gitbook.io/docs/server-side-scripting/database-functions-on-server.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
