如何输出数据从isql到CSV文件_with_标题?

我想查询的Sybase ASA 8数据库的isql客户端,并且查询结果导出为CSV格式的文本文件。 然而, 列标题不导出到文件中。 有没有特别的选项来指定,无论是在的iSQL设置也不在OUTPUT语句。

该查询和输出语句如下所示:

SELECT * FROM SomeTable; OUTPUT TO 'C:\temp\sometable.csv' FORMAT ASCII DELIMITED BY ';' QUOTE ''

其结果是像一个文件

1;Miller;Steve;1980-06-28 2;Jones;Martha;1965-11-02 3;Waters;Richard;1979-10-15

而我想有

ID;LASTNAME;FIRSTNAME;DOB 1;Miller;Steve;1980-06-28 2;Jones;Martha;1965-11-02 3;Waters;Richard;1979-10-15

任何提示?

--------------解决方案-------------

我会建议开始与另一份声明:

SELECT 'ID;LASTNAME;FIRSTNAME;DOB' FROM dummy;
OUTPUT TO 'C:\\temp\\sometable.csv' FORMAT ASCII DELIMITED BY ';' QUOTE '';

并添加APPEND选项上查询......但我不能让APPEND工作(但我使用的是ASA 11发动机)。

试试这个

SELECT 'ID','LASTNAME','FIRSTNAME','DOB' union
SELECT string(ID),LASTNAME,FIRSTNAME,DOB FROM SomeTable;
OUTPUT TO 'C:\\temp\\sometable.csv' FORMAT ASCII DELIMITED BY ';' QUOTE '';

奥利弗,

如果您使用的“EXCEL格式”选项,输出的第一行中的列名的行。 然后,一旦你得到它到Excel,你可以将它保存为另一种格式,如果您需要。

SELECT * FROM SOMETABLE;
OUTPUT TO 'C:\temp\sometable.xls' FORMAT EXCEL DELIMITED BY ';' QUOTE ''

希望这可以帮助。

杰夫·吉布森

只需添加选项

WITH COLUMN NAMES

你的发言,并将其添加与列名的标题行。

因此,完整的说法是:

SELECT * FROM SomeTable; OUTPUT TO 'C:\temp\sometable.csv' FORMAT ASCII DELIMITED BY ';' QUOTE '' WITH COLUMN NAMES

请参阅Sybase文档。

你已经熟悉了输出选项。 有没有选项,给你你想要的东西。

好吧,这个问题是接收端不接受标准的CSV文件,它需要分号。

如果你的脚本,那么你最好得到最接近你需要什么,然后AWK-荷兰国际集团输出文件格式输出。 速度非常快,你可以​​改变任何你需要的。 我觉得你最好的选择是ASCII或默认的输出格式,这将为逗号(没有冒号)分隔,以ASCII字符的文本文件,并包含列标题。 然后,使用一个awk命令的逗号转换为分号。

发现了一个简单的解决方案,将在一个文件中的头说header.txt(它将包含一行“COL_1 | COL_2 | col_3”),然后在头文件和输出文件运行结合起来:

cat header.txt my_table.txt > my_table_wth_head.txt

分类:SQL 时间:2015-03-15 人气:16
本文关键词: SQL,SYBASE ASA,ISQL
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 5.934 (s). 10 q(s)