1
resposta

alguem sabe como posso substituir por um banco sqlite? nao encontrei na doc do nest

@Module({
  imports: [
    SequelizeModule.forRoot({
      dialect: 'mysql',
      host: 'localhost',
      port: 3306,
      username: 'root',
      password: '',
      database: 'livraria',
      autoLoadModels: true,
      synchronize: true,
    }),
    SequelizeModule.forFeature([Livro])
  ],
  controllers: [AppController, LivrosController],
  providers: [AppService, LivrosService],
})
export class AppModule {}
1 resposta

Oi, Thiago! Tudo bem?

Desculpa a demora por um retorno.

Para substituir o banco de dados MySQL pelo SQLite no NestJS, precisamos inicialmente instalar o pacote sqlite3 e configurar a conexão no arquivo app.module.ts.

Para instalar o pacote, basta rodar o seguinte comando no terminal:

npm install --save sqlite3

Em seguida, precisamos alterar a configuração do SequelizeModule no arquivo app.module.ts para a seguinte:

@Module({
  imports: [
    SequelizeModule.forRoot({
      dialect: 'sqlite',
      storage: 'path/to/database.sqlite',
      autoLoadModels: true,
      synchronize: true,
    }),
    SequelizeModule.forFeature([Livro])
  ],
  controllers: [AppController, LivrosController],
  providers: [AppService, LivrosService],
})
export class AppModule {}

Devemos substituir o caminho path/to/database.sqlite pelo caminho onde desejamos salvar o arquivo do banco de dados SQLite.

Podemos observar que o comando dialect: 'sqlite' define o uso do SQLite como o dialeto do banco de dados, e storage: 'livraria.db' especifica o nome do arquivo SQLite que será criado.

Agora, ao iniciar o aplicativo NestJS, ele utilizará o banco de dados SQLite em vez do MySQL.

Espero ter ajudado na compreensão do problema. Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!

Um forte abraço e bons estudos!

Caso este post tenha te ajudado, por favor, marcar como solucionado ✓