客户一老系统用的sybase作为数据库,现在我们要把里面的数据导出来,sybase版本是12.5的。以前没接触过sybase,不懂。一开始是用“bcp ezfrmsecurity..userslog out bcp.out -Usa -P123456 -Jcp850 -c”命令(dcp 为导出命令,ezfrmsecurity为数据库名,userslog为要导出的表,bcp.out为导出的文件名,sa为用户名,123456为密码,Jcp850设置编码(要看sybase的编码方式是什么))
从sybase中导出数据,但这样导出的文件用excel打开有问题,因为表里有text类型的字段,并且这个字段的内容有回车换行,这样一个回车换行在excel里就识别成新的一行了。于是想到直接用excel的“导入外部数据”的功能来实现从sybase直接读取数据到excel,可配ODBC数据源的时候,发现XP系统里,没有带sybase的ODBC驱动,幸好有强大的互联网,网上有强大的牛人,在网上搜到XP里手工安装sybase的驱动的方法,并且下载到驱动包。于是照着做,还真的搞定了,很好很强大。在这跟大家分享下这个方法。
1、下载 Sybase12.5 ODBC驱动。(见附件)。
2、下载后解压到相关目录,设置环境变量path到所在目录。例如我解压到 C:/SYBASE-ODBC 目录下。
3、增加如下注册表信息:
进到:
HKEY_LOCAL_MACHINE/SOFTWARE/ODBC/ODBCINST.INI/ODBC Drivers]
点击右键,选择新建一个“字符串值”,名称为:Sybase ASE driver,值为:Installed。
在上一层目录,也就是:HKEY_LOCAL_MACHINE/SOFTWARE/ODBC/ODBCINST.INI
新建一个“项”,名称改为:Sybase ASE driver。然后在这个“项”上,新建一个“DWORD”,名称为:UsageCount,值为:0000000e。然后新建以下“字符串值”:
"Driver"="C:/ SYBASE-ODBC /syodase.dll"
"Setup"="C:/ SYBASE-ODBC /syodases.dll"
"SQLLevel"="0"
"FileUsage"="0"
"DriverODBCVer"="3.70.0.20"
"ConnectFunctions"="YYY"
"APILevel"="2"
"CPTimeout"="60"
"AltDefaults"="1"
4、重启一下机器,新建ODBC数据源的时候,就有sybase的驱动了。按说明配置上sybase的服务器地址,端口,数据库等属性就行了。(这里要说明一下,地址跟端口之间是一个英文输入法下的逗号分隔。例如我要连接的地址为:10.95.4.227,端口为:5000,那么在地址里输入:10.95.4.227,5000)
5、这个时候 在excel 中选择“数据”—“导入外部数据”—“新建数据查询”,在弹出的窗口中选择新建的sybase ODBC数据源,,接着一步一步做下去,就可以了。
6、后来有一哥们,推荐了款软件:Aqua Data Studio。很好很强大,能直接连接sybase,直接导出数据。还能连Oracle,SQL SERVER,DB2等数据库。用起来就像SQL SERVER的企业管理器那么方便。
(不能上传附件,郁闷了。有需要的可以到 http://containsoft.javaeye.com/admin/blogs/449030 上下载附件)
在 win xp 系统上手工安装sybase的ODBC驱动
最新推荐文章于 2013-12-06 20:49:55 发布