• Node.js通过ODBC访问PostgreSQL数据库


    Node.js通过ODBC访问PostgreSQL数据库

    Node.js除了通过pg模块访问PostgreSQL数据库,还可以通过odbc模块访问PostgreSQL数据库。这里介绍Windows操作系统下的实现。

    安装PostgreSQL的ODBC支持

    首先要安装PostgreSQL的ODBC支持,才能在ODBC配置工具里进行数据库引入配置。

    PostgreSQL的ODBC支持可以从官方进行下载,下载地址为:https://odbc.postgresql.org
    在这里插入图片描述
    在下载页面进入msi的目录
    在这里插入图片描述
    找到最新的进行下载
    在这里插入图片描述
    这里X86后缀的是给32位系统所用的版本,X64后缀的是给64位系统所用的版本,没有标识的则是两种版本集成。
    下载压缩包后,直接进行安装即可:
    在这里插入图片描述

    设置ODBC引入PostgreSQL数据库

    需要将已有的PostgreSQL数据库在ODBC工具里进行配置,首先在控制面板的管理工具里找到ODBC数据源管理工具:
    在这里插入图片描述
    具体选择32位还是64位数据源,要基于PostgreSQL安装的版本是32位还是64位,PostgreSQL的Windows版本情况如下:
    在这里插入图片描述
    这里选择64位的ODBC数据源工具打开,并进行PostgreSQL数据库源的添加:
    在这里插入图片描述
    然后在弹出的配置窗口里进行参数配置:
    在这里插入图片描述
    其中:
    DataSource是ODBC数据库之后的引用名;
    Description自由填写;
    Database是数据库名,也就是PostgreSQL管理工具pgAdmin里如下位置的某一个数据库名
    在这里插入图片描述
    SSL Mode是安全模式选择,这里disable即可;
    Server是填写数据库所在的主机的IP地址,本地可以用127.0.0.1;
    Port是填写数据库所在的主机的PostgreSQL服务访问端口,PostgreSQL安装时默认的端口是5432;
    User Name是数据库访问的用户名;
    Password是数据库访问的用户名对应的密码;
    在配置完成后,可以点击Test进行连接测试,成功后点击Save按钮,即可完成设置。如下所示:
    在这里插入图片描述
    关闭ODBC数据源配置工具,后面进行Node.js odbc模块的安装。

    Node.js odbc模块安装

    安装好node.js后,在新建或选择的目录通过命令行进行odbc模块的安装:

    npm install odbc
    
    • 1

    npm install -g cnpm --registry=https://registry.npm.taobao.org
    cnpm install odbc
    
    • 1
    • 2

    访问数据库

    在工程目录下建立js文件,如这里的demo.js,用于读取一个数据表dbtest的内容以及在一个数据表DBDEMO插入一条记录:
    在这里插入图片描述
    demo.js:

    const odbc = require('odbc');
     
    async function myQuery() {
        const connectionConfig = {
            connectionString: 'DSN=PostgreSQL35W',
            connectionTimeout: 10,
            loginTimeout: 10,
        }
        const connection = await odbc.connect(connectionConfig);
        
        const result = await connection.query('SELECT * FROM dbtest');
        console.log(JSON.stringify(result));
        console.log(JSON.stringify(result));
    
        const result = await connection.query(`INSERT INTO "DBDEMO" ("INDEX", "CODE", "AUTH") VALUES('20220005', 'Insert', 'Test')`);
        console.log(JSON.stringify(result));
    
        console.log(JSON.stringify(result));
    }
     
    myQuery();
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    在命令行执行代码:

    node demo
    
    • 1

    结果如下:
    在这里插入图片描述
    红圈部分是dbtest数据表查询出来的内容
    在这里插入图片描述
    而DBDEMO数据表也插入了一条记录
    在这里插入图片描述
    这样就实现了node.js通过odbc模块和连接访问PostgreSQL数据库。

    注意事项

    在使用Node.js访问PostgreSQL数据库时,需要留意数据库名及字段名大小写问题和双引号单引号包含顺序问题。具体分析及解决方案参见: Node.js访问PostgreSQL的注意事项及解决方案,对于Node.js采用odbc模块或pg模块访问PostgreSQL数据库时的问题和解决方案是一样的。

    –End–

  • 相关阅读:
    【雷达】线性调频脉冲雷达仿真实验附matlab代码
    RabbitMQ(15672) 消息中间件 NOTE
    osi七层模型
    CSS 实现跳动的方块动画
    计算机网络-网络层
    SpringSecurity授权
    4.cuBLAS开发指南中文版--CUDA 数据类型引用
    买卖股票的最佳时机
    OwnCloud个人云盘搭建方法
    Linux 系统函数
  • 原文地址:https://blog.csdn.net/hwytree/article/details/125115570