Skip to Content
Technical Articles
Author's profile photo Andrew Barnard

cds deploy to sqlite in-memory database

cds deploy deploys a given model to a database.

The example below deploys models to the sqlite database myWorkOrder in the directory db

cds deploy --to sqlite:db/myWorkOrder 

The deployment outputs the following information, indicating the database is filled with the initial data in the csv files locates by convention at db/data. Deployment was successful.

> filling jem.mwo.Interactions from db/data/jem.mwo-Interactions.csv 
> successfully deployed to ./db/myWorkOrder

Now we have a persistent database and the package.json is updated accordingly.

From time to time, however, I change my mind and I want to update the initial data and revert to working from memory.

I’ve found that cds deploy to the special database :memory: deploys to sqlite in memory and updates the package.json accordingly.

cds deploy --to sqlite::memory:

Running this command provides the following output.

> filling jem.mwo.Interactions from db/data/jem.mwo-Interactions.csv 
> successfully deployed to sqlite in-memory db
> updated ./package.json

and the package.json is updated

  "cds": {
    "requires": {
      "db": {
        "kind": "sqlite",
        "model": "*",
        "credentials": {
          "database": ":memory:"
        }
      }
    }
  },

This approach allows me to avoid editing package.json manually or remembering to explicitly run from memory. Now I’m free to continue to work in memory until such times as I wish to deploy the model again to a persistent database using the more familiar call.

cds deploy --to sqlite:db/myWorkOrder 

Perhaps you might find this useful.

Update: 24th of June 2021

Using

@sap/cds: 5.1.5
@sap/cds-compiler: 2.2.8
@sap/cds-dk: 4.1.5
@sap/cds-foss: 2.3.1
@sap/cds-runtime: 3.1.2
Node.js: v12.21.0

similar outcomes can be more simply achieved as follows:

Deployment to memory:

cds deploy --to sql

Deployment to persistent database:

cds deploy --to sqlite:/db/myWorkOrder

 

 

Assigned Tags

      1 Comment
      You must be Logged on to comment or reply to a post.
      Author's profile photo Sergei Haller
      Sergei Haller

      Nice one!