使用Isql sybase将数据输出到文件

时间:2017-06-21 18:51:03

标签: sybase isql

我使用下面的命令将数据写入isql

中的csv文件

$ ISQL -S DSA1_PROD -U emer_r_gh5432 -X

'use strict';

var alexa = require('alexa-sdk');

var APP_ID = "amzn1.ask.skill.b5c95058-7134-4044-9e77-a4279e0adaf7";

var PAUSE_MESSAGE = "paused!";
var RESUME_MESSAGE = "resumed!";

exports.handler = function(event, context, callback) {
  var alexa = Alexa.handler(event, context);
  alexa.APP_ID = APP_ID;
  alexa.registerHandlers(handlers);
  alexa.execute();
};

var handlers = {
  'play': function(audioURL, offsetInMilliseconds) {
    var response = {
      version: "1.0",
      response: {
        shouldEndSession: true,
        directives: [{
          type: "AudioPlayer.Play",
          playBehavior: "REPLACE_ALL",
          audioItem: {
            stream: {
              url: 'https://feeds.soundcloud.com/stream/275202399-amazon-web-services-306355661-amazon-web-services.mp3',
              offsetInMilliseconds: 10
            }
          }
        }]
      }
    }
    this.context.succeed(response);
  },
  'AMAZON.PauseIntent': function() {
    this.emit(':tell', PAUSE_MESSAGE);
  },
  'AMAZON.ResumeIntent': function() {
    this.emit(':tell', RESUME_MESSAGE);
  }
};

它说 服务器'ABC',第1行: ';'附近的语法不正确。

请帮忙

1 个答案:

答案 0 :(得分:1)

注意:我假设您正在使用Sybase ASE和 isql 命令行工具。在与SQLAnywhere,IQ和/或Advantage数据库产品进行对抗时,可能还有其他方法可以完成您尝试做的事情... *耸肩* ...

OUTPUT TO子句与 dbisql GUI工具一起使用。

使用 isql 命令行工具执行稍微类似的OUTPUT操作:

-- once logged in via isql ...

-- to write to new file; to overwrite existing file:

select ....
go > /path/to/local/file/accessible/by/user/running/isql

-- to append to existing file:

select ...
go >> /path/to/local/file/accessible/by/user/running/isql

要设置列分隔符,可以在从命令行调用isql时使用-s标志,例如:

# set the column delimiter to a semi-colon:
$ isql ... -s ';' ...

# set the column delimiter to a pipe:
$ isql ... -s '|' ...

请注意,仍然会使用固定宽度的列生成输出,每列的宽度由a)列的数据类型' width'或b)列的标题/标签宽度,以较宽者为准。

我不知道如何使用 isql 命令行工具执行以下操作:

  • 在isql会话中即时指定列分隔符
  • 指定quote字符
  • 删除多余的空格(即,以固定宽度格式而非真正分隔格式的输出数据)

要生成真正的分隔文件,您有以下几种选择:

  • 查看 dbisql GUI工具是否符合您的目的[我不会使用 dbisql ,所以我*我*假设* OUTPUT TO条款按预期工作]
  • 使用 bcp (命令行)实用程序将数据放入分隔文件[ bcp 选项,以及如何处理表的子集,这是一个更大的讨论,即在此回复中要解决的问题太多了]
  • 查看是否可以找到可以将所需数据集提取到分隔文件的其他(第三方)工具