在Ubuntu上,Node.js可以通过各种数据库驱动和ORM(对象关系映射)库与数据库进行交互。以下是一些常见的数据库及其对应的Node.js库:
-
MySQL: 使用
mysql
或mysql2
库。首先安装库:npm install mysql
或
npm install mysql2
示例代码:
const mysql = require('mysql'); const connection = mysql.createConnection({ host: 'localhost', user: 'your_username', password: 'your_password', database: 'your_database' }); connection.connect(); connection.query('SELECT * FROM your_table', (error, results, fields) => { if (error) throw error; console.log(results); }); connection.end();
-
PostgreSQL: 使用
pg
库。首先安装库:npm install pg
示例代码:
const { Client } = require('pg'); const client = new Client({ host: 'localhost', user: 'your_username', password: 'your_password', database: 'your_database' }); client.connect(); client.query('SELECT * FROM your_table', (error, results) => { if (error) throw error; console.log(results.rows); }); client.end();
-
MongoDB: 使用
mongoose
库。首先安装库:npm install mongoose
示例代码:
const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/your_database', { useNewUrlParser: true, useUnifiedTopology: true }); const yourSchema = new mongoose.Schema({ field1: String, field2: Number }); const YourModel = mongoose.model('YourModel', yourSchema); YourModel.find({}, (error, results) => { if (error) throw error; console.log(results); });
-
SQLite: 使用
sqlite3
库。首先安装库:npm install sqlite3
示例代码:
const sqlite3 = require('sqlite3').verbose(); const db = new sqlite3.Database('your_database.db'); db.all('SELECT * FROM your_table', (error, results) => { if (error) throw error; console.log(results); }); db.close();
这些示例仅用于演示如何在不同数据库上使用Node.js。在实际项目中,您可能需要根据需求进行更多的配置和优化。同时,为了保持代码的可维护性和可读性,建议使用异步编程(如Promise或async/await)来处理数据库操作。