0
0
FirebaseHow-ToBeginner · 4 min read

How to Write Data to Firebase Realtime Database

To write data to Firebase Realtime Database, use the set() method on a database reference pointing to the location where you want to store data. This method replaces any existing data at that location with the new data you provide.
📐

Syntax

The basic syntax to write data is to get a reference to the database location and then call set() with the data you want to save.

  • firebase.database().ref(path): Gets a reference to the database location at path.
  • set(data): Writes data to that location, replacing any existing data.
javascript
firebase.database().ref('path/to/data').set({ key: 'value' });
💻

Example

This example shows how to write a user's name and age to the Realtime Database under the path users/user1. It demonstrates initializing Firebase, getting a reference, and writing data.

javascript
import { initializeApp } from 'firebase/app';
import { getDatabase, ref, set } from 'firebase/database';

const firebaseConfig = {
  apiKey: 'YOUR_API_KEY',
  authDomain: 'YOUR_AUTH_DOMAIN',
  databaseURL: 'https://YOUR_PROJECT_ID.firebaseio.com',
  projectId: 'YOUR_PROJECT_ID',
  storageBucket: 'YOUR_STORAGE_BUCKET',
  messagingSenderId: 'YOUR_SENDER_ID',
  appId: 'YOUR_APP_ID'
};

// Initialize Firebase
const app = initializeApp(firebaseConfig);
const database = getDatabase(app);

// Write data
set(ref(database, 'users/user1'), {
  username: 'alice',
  age: 25
})
.then(() => {
  console.log('Data written successfully');
})
.catch((error) => {
  console.error('Write failed:', error);
});
Output
Data written successfully
⚠️

Common Pitfalls

Common mistakes when writing data include:

  • Not initializing Firebase properly before writing.
  • Using incorrect database paths, causing data to be written in unexpected places.
  • Not handling promises from set(), missing errors.
  • Overwriting data unintentionally because set() replaces all data at the path.

To avoid overwriting, use update() to change specific fields without replacing all data.

javascript
import { update, ref } from 'firebase/database';

/* Wrong: overwrites entire data at 'users/user1' */
set(ref(database, 'users/user1'), { age: 30 });

/* Right: updates only the age field without removing other data */
update(ref(database, 'users/user1'), { age: 30 });
📊

Quick Reference

Here is a quick summary of methods to write data:

MethodDescription
set(ref, data)Writes data to the specified path, replacing existing data.
update(ref, data)Updates specific fields without overwriting the entire data.
push(ref, data)Adds new data to a list with a unique key.

Key Takeaways

Use set() on a database reference to write or replace data at a specific path.
Always initialize Firebase and get the database reference before writing data.
Handle promises from set() to catch errors and confirm success.
Use update() to modify parts of data without overwriting everything.
Check your database path carefully to avoid writing data in the wrong place.