DBExpress联接问题,用过D6的大虾请进

ccat 2001-07-03 10:50:07
我用DBExpress组件做了个小程序,一个Connection,一个SQLTable,一个DataSource,一个DBGrid,联一个InterBase数据库。同样的程序用IBExpress组件好好的,用DBExpress就不行的,当把Grid往Source上联时会返回:不能用于isUnidirectional的数据集,我该怎么办?
后来,数据集换成SQLClientDataSet就好了,WHY?我更糊涂了。
...全文
197 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ccat 2001-07-04
  • 打赏
  • 举报
回复
时间到,散分!不管怎么说谢谢大家。
ccat 2001-07-04
  • 打赏
  • 举报
回复
如果不能动态设置数据源,DBExpress恐怕要大打折扣了,我想这也不太可能,有高人指点一下吗?
movingboy 2001-07-03
  • 打赏
  • 举报
回复
TTable类似一个可以双向的移动Cursor,但DBExpress实际只支持单向移动,即你只能Next,Next,……。但数据集改用TClientDataSet后,MIDAS用内部的数据缓冲机制来实现了双向移动,所以就没问题了。建议你还是尽量用cds吧。
ccat 2001-07-03
  • 打赏
  • 举报
回复
我查过帮助,只有DBGrid会出这个问题。Borland这么做到底是为什么?
xzgyb 2001-07-03
  • 打赏
  • 举报
回复
另外好像用DBEdit可以显示数据
asdf2970 2001-07-03
  • 打赏
  • 举报
回复
我也在摸索之中,我是连接mysql数据库,使用tsqlconnection,sqlclientdataset,datasource三个,可以访问数据库。刚开始用的时候,也出现过你说的问题。换了一个sqlclientdataset就好了。
ccat 2001-07-03
  • 打赏
  • 举报
回复
谢谢pipai,那么我可以运行期动态设置DBExpress的数据源吗?
pipai 2001-07-03
  • 打赏
  • 举报
回复
参见http://www.csdn.net/expert/topic/173/173712.shtm,这本来就是Borland有意如此设计的,使得在linux和windows之间移植数据库应用时更易实现,为简化,dbexpress使用单向cursor,如果你想用双向cursor的功能,可用Data Access中的TDataSetProvider和TClientDataset等中转,然后就可以用DBGrid控件了
ccat 2001-07-03
  • 打赏
  • 举报
回复
正在晕倒中……(因为听了movingboy(movingboy) 的话 )
不过还是谢谢,你的分兄弟先许下了,下面看还有没有朋友另有高见。

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧