Node.js 如何建立到OpenEdge数据库的连接

Node.js 如何建立到OpenEdge数据库的连接,node.js,express,openedge,progress-db,Node.js,Express,Openedge,Progress Db,我正在尝试连接到OpenEdge数据库,以便对其执行查询。然而,我很难弄清楚如何连接到它来进行这些查询 到目前为止,我已经尝试创建一个配置文件,但我不确定如何使用它建立与服务器的连接: "HMMv10": { "dbConfig": { "connectionString": "DRIVER={Progress OpenEdge 11.3 Driver}", "UID": "SYSPROGRESS", "pwd": "***", "host": "host

我正在尝试连接到OpenEdge数据库,以便对其执行查询。然而,我很难弄清楚如何连接到它来进行这些查询

到目前为止,我已经尝试创建一个配置文件,但我不确定如何使用它建立与服务器的连接:

"HMMv10": {
    "dbConfig": {
    "connectionString": "DRIVER={Progress OpenEdge 11.3 Driver}",
    "UID": "SYSPROGRESS",
    "pwd": "***",
    "host": "host.local",
    "port": "18210",
    "db": "hmm10"
    }
}

我不知道该配置文件是什么,也不知道它是如何工作的,但在尝试设置第三方软件以连接到OpenEdge数据库之前,最好使用提供的OE工具来验证您是否有可连接的正确配置的连接

Progress提供了一个名为“sqlexp”的命令行工具,可用于测试连接。访问该工具的最简单方法是通过“proenv”命令shell。在Windows上,只需打开“proenv”(它与“Progress”程序组中的其他进度命令一起安装)。如果安装了Linux或UNIX,请运行$DLC/bin/proenv

然后像这样启动sqlexp(我使用了本地数据库名和端口号):

如果没有错误,并且您得到SQLExplorer>提示,该提示足以显示存在可用的工作连接

如果您想更进一步,并证明您已被授予获取数据的权限,请尝试一个简单的select语句:

SQLExplorer> select count(*) from pub.customer;

            count(*) 
-------------------- 
                1117 

SQLExplorer> quit;

proenv>
如果这不起作用,则本地DBA没有配置SQL访问,或者您的配置/凭据不正确,并且再多使用其他工具也无法解决此问题

OpenEdge SQL注释:

如果您还不知道-所有OpenEdge数据都是可变长度的。许多SQL工具期望字段的宽度是已知的,使用元模式数据获取默认值。如果本地DBA没有通过“dbtool”维护该数据,那么您很可能会因为数据超出预期而出错

sqlexp希望命令以“;”结尾

“pub”模式是OpenEdge应用程序表所在的模式。表名需要预先挂起“pub.”


包含“-”的表名和字段名将需要引用。

我不知道该配置文件是什么,也不知道它是如何工作的,但在尝试设置第三方软件以连接到OpenEdge数据库之前,最好使用提供的OE工具来验证您是否具有可连接到的正确配置的连接

Progress提供了一个名为“sqlexp”的命令行工具,可用于测试连接。访问该工具的最简单方法是通过“proenv”命令shell。在Windows上,只需打开“proenv”(它与“Progress”程序组中的其他进度命令一起安装)。如果安装了Linux或UNIX,请运行$DLC/bin/proenv

然后像这样启动sqlexp(我使用了本地数据库名和端口号):

如果没有错误,并且您得到SQLExplorer>提示,该提示足以显示存在可用的工作连接

如果您想更进一步,并证明您已被授予获取数据的权限,请尝试一个简单的select语句:

SQLExplorer> select count(*) from pub.customer;

            count(*) 
-------------------- 
                1117 

SQLExplorer> quit;

proenv>
如果这不起作用,则本地DBA没有配置SQL访问,或者您的配置/凭据不正确,并且再多使用其他工具也无法解决此问题

OpenEdge SQL注释:

如果您还不知道-所有OpenEdge数据都是可变长度的。许多SQL工具期望字段的宽度是已知的,使用元模式数据获取默认值。如果本地DBA没有通过“dbtool”维护该数据,那么您很可能会因为数据超出预期而出错

sqlexp希望命令以“;”结尾

“pub”模式是OpenEdge应用程序表所在的模式。表名需要预先挂起“pub.”


包含“-”的表名和字段名将需要引用。

我正在列出我发现的答案,以防其他人正在查找。在NodeJS中使用RESTAPI,我使用npm odbc和OpenEdge odbc驱动程序连接到数据库。尽管npm odbc软件包只提到Unix,但它实际上在windows上工作。

我正在提供我发现的答案,以防其他人需要它。在NodeJS中使用RESTAPI,我使用npm odbc和OpenEdge odbc驱动程序连接到数据库。尽管npm odbc软件包只提到Unix,但它实际上在windows上工作。

很抱歉,我的问题有点不对劲,但您的回答非常有用!我目前正在制作一个NodeJS应用程序,我想知道是否有您推荐使用的客户端,或者我是否更适合创建到服务器的TCP连接?这不是我的专业领域,但似乎很有希望:这也不是我的专业领域,但是我想你可能会更高兴在OE数据库上公开REST服务,并在你的NodeJ中使用它!我目前正在制作一个NodeJS应用程序,我想知道是否有您推荐使用的客户端,或者我是否更适合创建到服务器的TCP连接?这不是我的专业领域,但似乎很有希望:这也不是我的专业领域,但我认为,在OE数据库上公开REST服务并在NodeJ中使用它,您可能会更高兴。