Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试使用节点sqlanywhere连接到远程sqlanywhere数据库时出错_Sql_Database_Node.js_Sqlanywhere - Fatal编程技术网

尝试使用节点sqlanywhere连接到远程sqlanywhere数据库时出错

尝试使用节点sqlanywhere连接到远程sqlanywhere数据库时出错,sql,database,node.js,sqlanywhere,Sql,Database,Node.js,Sqlanywhere,我正在尝试使用以下代码连接到远程Sql Anywhere 12.01数据库: let sqlanywhere = require('sqlanywhere'); let conn = sqlanywhere.createConnection(); let conn_params = { Server : 'server:port', UserId : 'user', Password : 'pass' };

我正在尝试使用以下代码连接到远程Sql Anywhere 12.01数据库:

    let sqlanywhere = require('sqlanywhere');

    let conn = sqlanywhere.createConnection();


    let conn_params = {
        Server : 'server:port',
        UserId : 'user',
        Password : 'pass'
    };

    conn.connect(conn_params, function() {
        console.log("Connected!");
        conn.exec('select * from cases', function (err, result) {
            if (err) {
                console.log(err);
            } else {
                console.log(result);
            }

        });
    });
我的console.log(“Connected!”)启动,所以我假设我已连接到远程数据库?但是,我提出的任何查询都会导致:

[Error: Code: -2001 Msg: Invalid Object]

我在网上查了一下错误代码,没有找到这个。有人知道我为什么会遇到这种情况,以及如何修复它吗?

回调函数应该包含两个参数:err和result。如果err未定义,则表示连接成功,否则表示发生了什么错误。(在连接的情况下,结果总是未定义的。)您的代码应该如下所示:

...
conn.connect( conn_params, function( err, result ) {
   if( err ) {
      console.log( "Connection failed: "+err );
   } else {
      console.log( "Connected!" );
   }
   ...
});
我必须将“let”改为“var”才能运行javascript。此外,服务器连接参数应该是服务器名称,而不是位置。您应该将“服务器”更改为“主机”,以指示主机名/端口


注意:此答案是从发布在上的同一个问题复制而来。

回调函数应包含两个参数:err和result。如果err未定义,则表示连接成功,否则表示发生了什么错误。(在连接的情况下,结果总是未定义的。)您的代码应该如下所示:

...
conn.connect( conn_params, function( err, result ) {
   if( err ) {
      console.log( "Connection failed: "+err );
   } else {
      console.log( "Connected!" );
   }
   ...
});
我必须将“let”改为“var”才能运行javascript。此外,服务器连接参数应该是服务器名称,而不是位置。您应该将“服务器”更改为“主机”,以指示主机名/端口


注意:此答案是从发布在上的同一问题复制而来。

您不必先选择数据库吗?不知道。我的DBA刚才说我可以在一个特定的面向公众的IP:端口连接到数据库。我的代码基本上就是节点sqlanywhere自述文件中的代码。你不需要先选择一个数据库吗?不知道。我的DBA刚才说我可以在一个特定的面向公众的IP:端口连接到数据库。我的代码基本上与节点sqlanywhere readme中的代码完全相同。