... | ... | @@ -37,15 +37,17 @@ Além disso, durante os encontros síncronos da equipe, foram discutidas as duas |
|
|
Para a interação com o banco de dados, optou-se por utilizar o Knex como query builder, de forma a tornar o código menos dependente de um banco de dados específico e a facilitar as consultas e alterações no esquema do banco de dados.
|
|
|
|
|
|
#### Migrations com Knex
|
|
|
No projeto são utilizadas migrations para auxiliar no versionamento das alterações no esquema do banco de dados que são feitas. Para cada uma dessas alterações (ex.: criação de nova tabela), deve ser criado um arquivo de migration a partir do comando abaixo:
|
|
|
No projeto são utilizadas migrations para auxiliar no versionamento das alterações no esquema do banco de dados que são feitas. Para cada uma dessas alterações (ex.: criação de nova tabela), deve ser criado um arquivo de migration a partir de um dos comandos abaixo:
|
|
|
```sh
|
|
|
npx knex migrate:make nome_da_migration -x ts
|
|
|
npm run create-migration nome_da_migration
|
|
|
```
|
|
|
Neste arquivo, estarão criados por padrão dois métodos vazios: up e down. O método up é executado para aplicar esta atualização no esquema do banco, enquanto o método down é executado para desfazer esta atualização, retornando para uma versão anterior do esquema. Assim, seguindo o exemplo da nova tabela, no método up deve ser construída uma sentença para criar esta tabela, enquanto o método down seria utilizado para remover esta tabela.
|
|
|
|
|
|
Para atualizar o banco de dados a partir das migrations, execute o comando abaixo.
|
|
|
Para atualizar o banco de dados a partir das migrations, execute um dos dois comandos abaixo.
|
|
|
```sh
|
|
|
npx knex migrate:latest
|
|
|
npm run update-migrations
|
|
|
```
|
|
|
|
|
|
#### Materiais para estudos sobre Knex
|
... | ... | |