我正在编写一个简单的SQL语句来生成要加载到数据库中的BCP文件。
这些BCP文件采用以下格式:
1|name|otherfield|otherfield1
要构建我正在做的文件:
SELECT id+"|"+name+"|"+otherfield+"|"+otherfield1+"\n" FROM table
是否有选择every column
而不必命名的select语句?
像
这样的东西SELECT * with "|" from Table
答案 0 :(得分:4)
您可以使用SELECT ... INTO OUTFILE
。
SELECT * INTO OUTFILE 'filename'
FIELDS TERMINATED BY '|'
LINES TERMINATED BY '\n'
FROM yourtable;
答案 1 :(得分:1)
如果您想要输出文件,那么您可以试试这个
SELECT *
INTO OUTFILE 'D://abc.txt'
FIELDS TERMINATED BY '|' LINES TERMINATED BY '\r\n'
FROM table
这里我使用\r\n
输出新行上的每一行(ON窗口)
答案 2 :(得分:1)
对于Sybase ASE,为什么不使用内置的 bcp 实用程序更改删除程序。它默认会捕获所有列。
bcp MYDATABASE..MYTABLE out MYTABLEFILE.bcp -Uusername -Ppassword -SMYSERVER -c -t|
您必须使用 -t 选项设置列分隔符,该分隔符只能与指定“字符”的 -c 选项一起使用(人类可读)基于bcp输出。如果您使用的是基于Unix / Linux的系统,则可能必须通过管道,例如的 - \吨强>