sql >> データベース >  >> RDS >> PostgreSQL

Firebase:外部DBから読み取る方法は?

    一時的な解決策として、同様の問題を解決する必要がありました。 firebaseadminserviceAccountでアプリを初期化しました。次に、サーバーでFirebaseコレクションの変更をリッスンし、新しい値を受け取ったときにPostgreSQLの値を挿入/更新しました。

    アプリを管理者として初期化し、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());
      });
    

    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. SqlCommandを使用して、パラメーター化されたデータベース名でデータベースを作成するにはどうすればよいですか?

    2. MicrosoftAccessでデータを管理する

    3. SQLServerSELECTを既存のテーブルに追加

    4. Laravelの2点間のHaversine距離の計算