1.選擇適合的資料庫
2.安裝和設置資料庫
3.實現基本的 CRUD 操作
在 Node.js/Express 應用中,你可以選擇使用 SQL 或 NoSQL 類型的資料庫。
範例:
MongoDB
MongoDB 是一個常見的 NoSQL 文檔型資料庫。今天將以 MongoDB 和 Mongoose 來進行操作。
安裝 Mongoose:
npm install mongoose
設置 MongoDB 連接:
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/mydatabase', {
useNewUrlParser: true,
useUnifiedTopology: true
})
.then(() => console.log('MongoDB connected'))
.catch(err => console.log(err));
在 MongoDB 中,資料模型是一個用來定義數據結構的模式(Schema)。你將使用 Mongoose 來建立模型。
定義 Schema:
const mongoose = require('mongoose');
const userSchema = new mongoose.Schema({
name: String,
email: String,
age: Number
});
const User = mongoose.model('User', userSchema);
1.創建(Create)
要將數據插入資料庫,使用 POST 請求創建新用戶:
app.post('/users', async (req, res) => {
try {
const user = new User({
name: req.body.name,
email: req.body.email,
age: req.body.age
});
await user.save();
res.status(201).json(user);
} catch (err) {
res.status(400).json({ error: err.message });
}
});
2.讀取(Read)
要從資料庫中讀取數據,使用 GET 請求獲取所有用戶:
app.get('/users', async (req, res) => {
try {
const users = await User.find();
res.status(200).json(users);
} catch (err) {
res.status(400).json({ error: err.message });
}
});
3.更新(Update)
要更新資料庫中的現有數據,使用 PUT 請求更新用戶信息:
app.put('/users/:id', async (req, res) => {
try {
const user = await User.findByIdAndUpdate(req.params.id, req.body, { new: true });
if (!user) {
return res.status(404).json({ error: 'User not found' });
}
res.status(200).json(user);
} catch (err) {
res.status(400).json({ error: err.message });
}
});
4.刪除(Delete)
要刪除資料庫中的數據,使用 DELETE 請求刪除用戶:
app.delete('/users/:id', async (req, res) => {
try {
const user = await User.findByIdAndDelete(req.params.id);
if (!user) {
return res.status(404).json({ error: 'User not found' });
}
res.status(200).json({ message: 'User deleted' });
} catch (err) {
res.status(400).json({ error: err.message });
}
});
完成 CRUD API 後,可以使用 Postman 或 CURL 來測試每個 API 的功能。此外,確保處理錯誤情況,如用戶不存在時的錯誤提示等。