如何使用delphi操作sybase数据库。(200)

  • 主题发起人 主题发起人 Mad[Frog]
  • 开始时间 开始时间
M

Mad[Frog]

Unregistered / Unconfirmed
GUEST, unregistred user!
现在有个程序是拿pb+sybase(是sae12.5)做的,现在我们要升级这个程序,升级成delphi+sql的,而现在delphi这个版本的程序我们已经有了,而且很成熟了,所以现在我们需要做的是将sybase里面的数据导入到sql里面。在这个学习的过程中遇见了一些问题:1.我已经可以安装sybase(ase)数据库了,但是现在的五个服务里面有连个启动不了(最后两个(xpserver和sysam)),请问为什么?2.sybase数据库的sybase sql anywhere,asa,ase他们备份后的文件后缀是什么?都能备份出什么文件?3.delphi如何操作sybase(ase)数据库?如何与其连接?有拿些连接方式(驱动)?最简单也要实现一下在一个窗体上grid里面显示sybase(ase)数据库中表的内容。4.如何备份sybase(ase)数据库,我在网上看用命令可以实现,我也实现了,但是后缀是什么?而且备份的这个文件再导入就出错了。为什么?如何使用图形界面工具sybase central来备份和还原数据库?5.最后一个问题如何实现sybase(ase)数据库导入到sql里面。这些问题有重复的地方,写的时候比较乱,闹心好几天了,嘴也起泡了,热心的delphi高手们在作答的时候请麻烦说清楚答案,不要引用这个又那个,或者看书,或者一大堆理论。我也知道这些很重要。但现在需要实际的操作如何来完成这些。小弟先谢谢了,高手会的如果嫌少我可以在加可以全给你们(一共600)只要能实现。
 
大富翁人气现在怎么。。。自己顶一下。[:D]
 
odbc or bde
 
Delphi连接Sybase可以用ODBC或者ADO,导数可以直接使用SQLServer的DTS,关键在于你是否可以在ADO或者ODBC中确实能连上Sybase
 
连接用ODBC或BDE,用BDE好些,但有时候也会出现些莫名其妙的问题。好久没有使用ase了,倒数据库用DBArtisam吧。对sybase的支持不错。
 
To:forgot2002,modula-2在提问之前我看了很多资料,我也知道用odbc,bde,ado。To:forgot2002我连接asa的时候可以连接上,使用odbc数据源。但是使用odbc就连不上ase了。请问如何解决。To:ghostking请问DBArtisam是个什么东西,是不是DBArtisan,你写错了吧。是免费的吗?看来你是高手呀!哈哈,能留下你的QQ吗?还有些问题要请教。为什么人这么少那?分不够我可以在加!!!
 
自己再顶,高手快来呀~~~
 
高手都在哪里?[:(!]。
 
DBArtisan,你可以用7.0或者8.0版本.你可以搜寻db721.exe.里面有工具,可以导出插入语句,没有图象等数据流数据的时候.
 
DBArtisan软件我有了,他能把ase数据库导到sql里面吗?
 
为什么没人回答呀啊?愁呀,我就是顶~~~
 
ODBC绝对可以我去年在一个地方也做了从sybase到sqlserver当时因为密码没弄好,害得我搜了n多.建立个udl连接可以啊,Delphi中直接访问了.值得注意的问题:Sybase 的用户权限不一样,可能就访问不了。还是需要问清楚sybase数据库的用户名和密码
 
delphi 连sybase需要sybase client支持
 
To:zzggold2000大侠可以给我举个例子呀,小弟是在菜鸟呀。是ase导到sql吗?能把你做的例子给小弟看看吗?To:萧寒月能说的具体一点吗?还需要Sybase Client呀~~~
 
BDE->NEW->SYBASE填HOST NAME ,database name应该就可以了
 
To:萧寒月你qq多少,能否交流下?
 
1.xpserver 是一个OpenServer应用,在这里的作用是执行扩展存储过程(比如想在SQL中执行操作系统指令,当然不限于这个),常规数据库应用是极少用到这样的功能。 sysam是管理Sybase产品许可证(License)的,貌似win平台下这些功能限制比较宽松,很少出License方面的问题,不过详情我也不太清楚。(参考这里,全E文:http://www.sybase.com/detail?id=1009350) 这两个服务起不来,一般是因为启动条件(主机名,配置文件等)未完全配置好,不过考虑到用处不大,起不来也无所谓了,在服务里禁用也没问题。2.我没用过sql anywhere, 至于sybase备份文件,是没有强制固定后缀的。会备份(dump)出跟平台相关的二进制数据文件,用于恢复(load)操作. 关于sybase备份这个话题很大,涉及到备份模型,全备,累加备份,归档日志滚动,恢复过程等。3.有几种方法:A.使用BDE *.安装sybase客户端库(其实就是一堆DLL和一些相关配置文件),设定SYBASE环境变量=X:/Sybase(你安装sybase客户端的位置)...其实还有其它环境变量,用sybase安装程序进行安装就可以设置好. *.运行dsedit,设置一个服务名,同时指定ASE服务器IP和端口. *.打开Delphi,新建application,放入一个TDatabase组件(BDE页面),双击之,先设个名字Name=dntest,再选DriverName为SYBASE,按“Defaults”则在下面生成默认参数,修改SERVER NAME=上面dsedit中的设定值,再修改DATABASE NAME=xxxx(xxxx你知我不知),如果需要自动登录,再修改USER NAME和PASSWORD.. *.放入Table1, Database Name = dntest(看上一步),然后在TableName中设定表名 #.放DataSource,DataSet设置为上一步的Table1 #.放DBGrid,设置DataSource为上一步的DataSource, 然后把上上步的组件的Active属性设置为True.B.使用OLEDB. *.要安装sybase ASE OLEDB Provider(如果你对ADO机制不了解,劝你也别搞这个了),同样要按上面那样设置环境变量 *.运行OLEDB Provider Configuration Manager生成一个DataSource *.道理跟dsedit一样,生成一个指定了服务器IP和Port的数据源名 *.到Performance页面,设定Select Method的参数为Cursor(这样好象兼容性好一些,原因自己看Help分析) *.打开Delphi,新建Application,放入一个ADOConnection组件,数据提供程序选Sybase ASE OLE DB Provider *.连接页面数据源输入上上上步的数据源名,初始目录=数据库文件名 *.放入ADOTable,Connection属性关联到ADOConnection组件, TableName属性=表名 #.与BDE的步骤相同C.使用ODBC *.可以通过ADO over ODBC (如果OLEDB方式你弄懂了,这个很容易,就是要注意安装sybase ODBC Driver和设置odbc数据源) *.可以通过BDE over ODBC (感觉这是脱裤子放屁,虽然可以用,但我从来不用)4.上面已经解答,就是dump,load. Sybase Central中图形界面操作都试不出来,我实在是不知道说什么好了 至于出错,俺不是神仙,sybase的错误提示有好几百种,还原的错误提示估计也会有十几二十种,猜不出来.5.前面已经有兄弟提到用DBArtisan,这个不失为一个好办法,但为何一定要备份SQL语句,纯粹做数据迁移的话,用Delphi带的Datapump或PowerBuilder中的DataPipe也是很轻易的事. 再不行,DBArtisan貌似也有类似功能.这几天RP爆发,一口气回答了N个问题,累S了~~
 
To:szf1解决2解决3A解决 B解决 C.使用ODBC *.可以通过ADO over ODBC (如果OLEDB方式你弄懂了,这个很容易,就是要注意安装sybase ODBC Driver和设置odbc数据源) *.可以通过BDE over ODBC (感觉这是脱裤子放屁,虽然可以用,但我从来不用) 我在管理工具的数据源(ODBC)中添加一个Sybase ASE ODBC Driver后设置连接,无论如何都连接不上,提示警告:连接拒绝,核实主机名和端口号连接登录时间期满。请问如何解决?4解决5DBArtisan我安装了,但是启动的时候就停在一个界面,好像要求配置什么,无论我如何配置都过不去,连接服务器也连接不上,点击OK后整个程序就都退出了。为什么那?由于我使用ODBC无法连接,所以Datapump也无法用了,郁闷。最后还请大侠们帮帮忙。
 
Datapump是个BDE应用程序,使用全局BDE设置(也就是使用bdeadministrator中的设置项,本机上所有BDE应用都可以使用这个设置),而3.A中的TDatabase组件实现的其实是一个局部BDE设置(这个设置只有Application本身可用.)明白了这个道理,使用Datapump就容易了,基本步骤就是:1.生成连接sybase的BDE连接别名(使用BDEAdmin程序,原理和3.A完全一样)2.生成MSSQL的ODBC连接3.生成连接上一步ODBC连接的BDE连接别名.4.使用Datapump,在源数据库使用步骤1.的BDE别名,在目标数据库使用步骤2的BDE别名...
 
用ADO 如我的'Provider=MSDASQL.1;Password=;Persist Security Info=True;User ID=sa;Data Source=SYERP;Initial Catalog=RUN10'
 
后退
顶部