Connessione a PostgreSQL in Dart

Mattepuffo's logo
Connessione a PostgreSQL in Dart

Connessione a PostgreSQL in Dart

Per connetterci a PostgreSQL in Dart abbiamo un package apposito: postgres!

In questo articolo vediamo come usarlo.

La tabella è composta da tre campi:

  • id (sequence)
  • titolo (varchar)
  • autore (varchar)

Per installare il package:

dart pub add postgres

Qui sotto un esempio in cui:

  • facciamo una insert
  • facciamo una select di tutti i records
  • facciamo una select cercando per id
import 'package:postgres/postgres.dart';

void main() async {
  final conn = await Connection.open(Endpoint(
    host: 'pg-382f593f-matteo-89c2.g.aivencloud.com',
    database: 'defaultdb',
    username: 'avnadmin',
    password: 'AVNS_FX02703ShRENk81UAoZ',
    port: 21606,
  ));

  final insert = await conn.execute(
    r'INSERT INTO libri (titolo, autore) VALUES ($1, $2)',
    parameters: ['Sahara', 'Clive Cussler'],
  );
  print('Inserted ${insert.affectedRows} rows');

  final select = await conn.prepare(Sql('SELECT * FROM libri'));
  final resSelect = await select.run([]);
  for (var element in resSelect) {
    print('Titolo: ${element.elementAt(1)}; Autore: ${element.elementAt(2)}');
  }
  select.dispose();

  final select2 = await conn.execute(
    Sql.named('SELECT * FROM libri WHERE id = @id'),
    parameters: {'id': 2},
  );
  print(select2);

  await conn.close();
}

Enjoy!


Condividi

Commentami!