Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update src/README with instructions on using sqlite #161

Merged
merged 8 commits into from
Dec 22, 2023
61 changes: 61 additions & 0 deletions src/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,67 @@ Follow these directions for easier database editing.
- `npx prisma db push`
- Run the application and confirm it works

# Prisma SQLite
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add a note on why someone would want to use SQLite?


Why use SQLite?

SQLite is a light-weight alternative to Microsoft SQL Server that provides an easier setup solution for those running the project locally.

Getting started with SQLite

Firstly, check if your machine already has SQLite. Many operating systems today come with SQLite pre-installed, but to verify run the following command:

```bash
$sqlite3
```

If already installed, a message similar to the following will display:

```bash
SQLite version 3.37.2 2022-01-06 13:25:41
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite>
```

If not already installed, continue below:

Windows Users

- Checkout [SQLiteTutorial.net](https://www.sqlitetutorial.net/download-install-sqlite/) for a quick and simple Windows setup.

Mac and Linux Users

1. Go to the [SQLite download page](https://www.sqlite.org/download.html) and download sqlite-autoconf-*.tar.gz from the **Source Code** section.
2. Run the following commands:

```bash
$tar xvfz sqlite-autoconf-3071502.tar.gz
$cd sqlite-autoconf-3071502
$./configure --prefix=/usr/local
$make
$make install
```

Configuration

- Update the schema.prisma file to use the following provider

`provider = "sqlite"`

- Update the env file to specify the database file

`DATABASE_URL="file:./db.sqlite"`

- Run the following command to update the database

```bash
npx prisma db push
```

> Note: The demographic questions will not populate because they are hard-coded in the SQL migrations.

# Working with prisma

When the data model changes, run the following to update your local database with the latest migrations
Expand Down
Loading