Sybase数据导入导出命令

概述

由于执行insert语句或用datastudio工具进行表级别的数据导入,当数据在几万条时就会很慢,所以通过查询相关文档,发现sybaseiq提供加载器支持数据导入,几万条数据也只需要几秒钟时间。故本文整理了Sybase数据库调用加载器的命令和参数设置,以及导出数据文件的常用命令。


一、从Sybase数据库导出数据

方法一:默认逗号分隔符

导出数据文件到本地sybase客户端安装文件夹。

语法:select * from 表名># 文件名.txt;

数据默认以逗号分隔,字符串在单引号内。

方法二:自行设置分隔符

在sysbase服务器所在的linux系统终端,执行如下命令,导出数据文件到linux服务器上。也可以像方法一一样,在sybase客户端工具上执行,生成的数据文件在linux服务器上。


语法:

1. 在终端连接sybase数据库,填写库名、用户名、密码。

dbisql -c "eng=xxxxiq_zh;uid=xxxx;pwd=xxxx "-nogui


2.设置字段间分隔符

(sgms)> set temporary optionTemp_Extract_Column_Delimiter = '&%';


3. 设置导出数据的文件名

(sgms)> set temporary option Temp_Extract_Name1 ='TABLE_NAME.txt';


4.执行导出数据的sql脚本

(sgms)> select * from TABLE_NAME;--执行导出数据的脚本


5.关闭导出操作

(sgms)> set temporary optionTemp_Extract_Name1 = '';


二、将数据从文件导入到Sybase数据库

1. 将数据文件上传到linux服务器,数据库安装路径下。


2. 在sybase客户端执行如下命令进行导入操作

导入用方法一导出的数据文件,注意:换行标志为 \x0d

LOAD TABLE TABLE_NAME(DATA_ID',',COL1',',COL2',',COL3',',COL4',',COL5'\x0d')from 'TABLE_NAME.txt' quotes off escapes off format 'ascii' gocommit;


导入用方法二导出的数据文件,注意:换行标志为 \x0a

LOAD TABLE TABLE_NAME(DATA_ID'&%',COL1'&%',COL2'&%',COL3'&%',COL4'&%',COL5'\x0a')from 'TABLE_NAME.txt' quotes off escapes off format 'ascii' gocommit;


3. 导入命令参数说明

escapes on         --on表示斜杠后面的内容认为是特殊字符,off代表相反含义。

quotes on          --on表示引号认为不是字符串的一部分,off代表相反含义。

notify 100000       --指加载100000条打一次日志。

with checkpoint on   --load完将内存中的数据写入磁盘。

format 'ascii'        --设置导入数据文件编码格式。

4.生成导入命令脚本

select

'LOADTABLE TABLE_NAME('||

replace(list(column_name),',','''&%'',')

||'''&%\x0a'''

||')from''TABLE_NAME.txt'' quotes off escapes off format ''ascii'' go commit;' sqlcomment

from sp_iqcolumn('TABLE_NAME');


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空