Nodejs Oracle数据库访问模块oracledb的使用

Nodejs Oracle数据库访问模块oracledb的使用
oracledb 是一个用于 Node.js 的 Oracle 数据库访问模块,它提供了高性能和易用性。下面是一些基本的使用示例,包括如何安装、连接到数据库以及执行查询。

安装

首先,你需要安装 oracledb 模块。你可以使用 npm 来安装:

npm install oracledb

连接到数据库

在使用 oracledb 之前,你需要确保你的环境中已经配置了 Oracle 客户端库。如果你是在 Windows 上使用,可以参考官方文档下载并安装 Oracle Instant Client。

接下来,你可以编写一个简单的 Node.js 脚本来连接到 Oracle 数据库:

const oracledb = require('oracledb');

async function run() {
    let connection;

    try {
        // 创建数据库连接
        connection = await oracledb.getConnection({
            user: "your_username",
            password: "your_password",
            connectString: "hostname:port/service_name"
        });

        console.log("Connected to database");

        // 执行查询
        const result = await connection.execute(`SELECT * FROM your_table`);
        console.log(result.rows);
    } catch (err) {
        console.error(err);
    } finally {
        if (connection) {
            try {
                // 关闭连接
                await connection.close();
                console.log("Connection closed");
            } catch (err) {
                console.error(err);
            }
        }
    }
}

run();

执行查询

上面的例子中已经展示了如何执行一个简单的 SQL 查询。你也可以使用绑定变量来执行参数化的查询,以提高安全性和性能:

const bindVar = { id: 123 };
const sql = `SELECT * FROM your_table WHERE id = :id`;

connection.execute(sql, bindVar)
    .then((result) => {
        console.log(result.rows);
    })
    .catch((err) => {
        console.error(err);
    });

批量操作

如果你想进行批量插入或更新,可以使用批量执行功能:

const data = [
    { id: 1, name: 'Alice' },
    { id: 2, name: 'Bob' }
];

const binds = data.map(item => ({
    id: item.id,
    name: item.name
}));

const sql = `INSERT INTO your_table (id, name) VALUES (:id, :name)`;

connection.executeMany(sql, binds)
    .then(() => {
        console.log('Data inserted');
    })
    .catch((err) => {
        console.error(err);
    });

这些例子应该能帮助你开始使用 oracledb 模块。对于更复杂的场景,如事务处理、游标操作等,可以查阅官方文档获取更多信息。


3 回复

当然,了解oracledb是个好选择!首先,你需要安装它,只需运行npm install oracledb。接着,你可以尝试这段简单的代码来连接Oracle数据库:

const oracledb = require('oracledb');

async function run() {
    let connection;

    try {
        connection = await oracledb.getConnection({
            user: "your_username",
            password: "your_password",
            connectString: "localhost/XE"  // 根据你的环境调整
        });

        console.log("Connected to database");

        const result = await connection.execute("SELECT 'Hello World' FROM dual");
        console.log(result.rows[0][0]);  // 输出: Hello World

    } catch (err) {
        console.error(err);
    } finally {
        if (connection) {
            try {
                await connection.close();
                console.log("Connection closed.");
            } catch (err) {
                console.error(err);
            }
        }
    }
}

run();

记得替换your_usernameyour_password为你自己的数据库登录信息。希望这能帮到你,享受编程的乐趣吧!


oracledb 是一个用于 Node.js 的 Oracle 数据库访问模块,允许开发者轻松地与 Oracle 数据库进行交互。下面是一些基本的使用示例,包括如何安装、连接数据库、执行查询和处理结果。

1. 安装 oracledb

首先,你需要安装 oracledb 模块。你可以通过 npm 来安装:

npm install oracledb

如果你在 Windows 或 macOS 上安装遇到问题,可能需要先安装 Oracle Instant Client,并将其路径添加到系统环境变量中。

2. 连接到 Oracle 数据库

const oracledb = require('oracledb');

async function getConnection() {
    let connection;

    try {
        connection = await oracledb.getConnection({
            user: "your_username",
            password: "your_password",
            connectString: "hostname:port/service_name"
        });

        console.log("Connected to database");

        // 执行其他数据库操作
    } catch (err) {
        console.error(err);
    } finally {
        if (connection) {
            try {
                await connection.close();
                console.log("Connection closed");
            } catch (err) {
                console.error(err);
            }
        }
    }
}

getConnection();

3. 执行 SQL 查询

async function queryDatabase(connection, sql, binds) {
    try {
        const result = await connection.execute(sql, binds);
        console.log(result.rows); // 输出查询结果
    } catch (err) {
        console.error(err);
    }
}

// 调用查询函数
queryDatabase(connection, "SELECT * FROM your_table", []);

4. 处理事务

async function processTransaction(connection) {
    try {
        await connection.execute("BEGIN TRANSACTION;");
        await connection.execute("INSERT INTO your_table (column1, column2) VALUES (:1, :2)", ["value1", "value2"]);
        await connection.commit();
        console.log("Transaction committed");
    } catch (err) {
        await connection.rollback();
        console.error("Transaction rolled back:", err);
    }
}

以上就是使用 oracledb 进行基本操作的示例。你可以根据实际需求调整连接参数、SQL 语句等。

oracledb 是一个用于 Node.js 的 Oracle 数据库访问模块。首先,你需要安装这个模块,可以使用npm:

npm install oracledb

连接到Oracle数据库需要配置连接字符串、用户名和密码等信息。示例代码如下:

const oracledb = require('oracledb');

async function run() {
    let connection;

    try {
        connection = await oracledb.getConnection({
            user: "your_username",
            password: "your_password",
            connectString: "your_connection_string"
        });

        const result = await connection.execute("SELECT * FROM your_table");
        console.log(result.rows);
    } catch (err) {
        console.error(err);
    } finally {
        if (connection) {
            try {
                await connection.close();
            } catch (err) {
                console.error(err);
            }
        }
    }
}

run();

确保替换上述代码中的占位符为你的实际数据库信息。

回到顶部