Node.js 如何建立到OpenEdge数据库的连接
我正在尝试连接到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
"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中使用它,您可能会更高兴。