sql >> Databáze >  >> RDS >> PostgreSQL

Firebase:Jak číst z externí DB?

Měl jsem podobný problém k vyřešení a jako dočasné řešení Inicializoval jsem aplikaci pomocí účtu správce Firebase. Poté jsem naslouchal změnám kolekce firebase na mém serveru a při obdržení nové hodnoty jsem vložil/aktualizoval hodnoty v PostgreSQL.

Inicializujte aplikaci jako správce a poslouchejte změny na Firebase:

  admin.initializeApp({
    credential: admin.credential.cert(serviceAccount),
    databaseURL: 'https://yourfirebaseproject.firebaseio.com',
  });

  const db = admin.database();

  db.ref('User').on('value', async (snapshot) => {
    insertOrUpdate(User, 'users', snapshot.val());
  });

Vložte\aktualizujte data do PostgreSQL:

const insertOrUpdate = (model, tableName, data) => {
  const firstData = data[0] ? data[0] : data;

  return model.knex().raw(
    knex(tableName).insert(data).toQuery() + ' ON CONFLICT ("id") DO UPDATE SET ' +
      Object.keys(firstData).map((field) => `${field}=EXCLUDED.${field}`).join(', ')
  );
};


  1. Alternativa k mysql_real_escape_string bez připojení k DB

  2. nesprávný specifikátor sloupce pro sloupec

  3. Funkce PLpgSQL k nalezení sloupců pouze s hodnotami NULL v dané tabulce

  4. Jak vypnout mezipaměť dotazů MySQL při používání SQLAlchemy?