社区
数据库及相关技术
帖子详情
关于TADOQuery与DataSource->DataSet的问题?
killedkiss
2003-02-14 09:25:28
为什么我这样赋值可以,
DBGrid2->DataSource->DataSet=ADOUQuery1;
以下这样就不可以???
TADOUQuery*ADO=new TADOUQuery;
ADO=DBGrid2->DataSource->DataSet;
出现说类型不同不能赋值的错误,我这样强行转换了也不行
ADO=TADOUQuery(DBGrid2->DataSource->DataSet)
...全文
149
10
打赏
收藏
关于TADOQuery与DataSource->DataSet的问题?
为什么我这样赋值可以, DBGrid2->DataSource->DataSet=ADOUQuery1; 以下这样就不可以??? TADOUQuery*ADO=new TADOUQuery; ADO=DBGrid2->DataSource->DataSet; 出现说类型不同不能赋值的错误,我这样强行转换了也不行 ADO=TADOUQuery(DBGrid2->DataSource->DataSet)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Robin
2003-02-19
打赏
举报
回复
高!
呵呵!
windindance
2003-02-14
打赏
举报
回复
TADOQuery *ADO=new TADOQuery(this);
ADO=DBGrid2->DataSource->DataSet;
有两处错误:
应该强制转换:
ADO = dynamic_cast<TADOQuery*>(DBGrid2->DataSource->DataSet);
但是强制转换以后,原来的new TADOQuery(this)成为悬浮指针。
所以标准的用法:
if (TADOQuery *ADO = dynamic_cast<TADOQuery*>(DBGrid2->DataSource->DataSet) )
{
AddListViewPicutures(DBGrid2->DataSource,ADO);
}
killedkiss
2003-02-14
打赏
举报
回复
bluemeteor(挂月||╭∩╮(︶︿︶)╭∩╮)
TADOQuery *ADO=new TADOQuery(this);
ADO=DBGrid2->DataSource->DataSet;
AddListViewPicutures(DBGrid2->DataSource,ADO);
我就是这样写的,可是不行
killedkiss
2003-02-14
打赏
举报
回复
: Drate(鸟窝里的虫)
我的ADO是一个函数的虚参,所以无法象你这样写 怎么办??
bluemeteor
2003-02-14
打赏
举报
回复
这样当然是不可以的....
DBGrid2->DataSource->DataSet这个是一个指向Tdataset类型对象的指针(在delphi)里
如果你DBGrid2->DataSource->DataSet已经指向了一个query类型的对象那么
先创建一个指向ADO的指针,然后把这个DBGrid2->DataSource->DataSet的地址赋值给那个指针
来自delphi版的报道
Billy_Chen28
2003-02-14
打赏
举报
回复
用Clone函数,具体可以看看系统帮助
Junmy
2003-02-14
打赏
举报
回复
问题可能是:你的DBGrid2->DataSource->DataSet是不是空的?如果该值是空的,你就别的TADOUQuery实例赋值或进行强行转换,就难免会出错!请查看一下!
票票飞扬
2003-02-14
打赏
举报
回复
DataSet包括ADOQuery,ADOTable,Query,Table等。
ADOQuery包含于DataSet,所以对DataSet可以用ADOQuery赋值,而不能对ADOQuery用DataSet赋值。
Drate
2003-02-14
打赏
举报
回复
这样是肯定不行的,因为ADO与DBGrid2->DataSource->DataSet都是对象的指针
不知道在BCB中是不是可以这样试试:
ADO.Clone(DBGrid2->DataSource->DataSet);
qingnag
2003-02-14
打赏
举报
回复
同楼上一样。 祝你好运!
SQL server字段名中有数据类型为text时,
ado
query
->fieldbyname->asstring取不到全部值
SQL server字段名中有数据类型为text时,
ado
query
->fieldbyname->asstring取不到全部值。
dbgrid支持鼠标滚轮
this->DBGrid1->
DataSource
->
DataSet
->MoveBy(-1); } Handled = true; } } //先在form上加一个TApplicationEvents procedure TForm1.ApplicationEvents1...
C Builder中的数据模块Data Module
可以将连接组件T
ADO
Connection和查询组件T
ADO
Query
放到数据模块中。本质是一个数据库查询的管理类。 (1)创建Data Module类单元 .h文件内容如下: #ifndef DataModuleUnitH #define DataModuleUnitH //-------...
TDBGridEh控件的使用
<br />TDBGrid是是Ehlib组件包中一个功能...<br />sumlist->Active 设置为 true ;<br />(2)、增加合计函数:<br />void AddSumField(TDBGridEh *AGrid,AnsiString AField)<br />{<br /> for(int i=0;i<AGrid->Colum
Delphi DataModule使用方法
DataModule1.
DataSource
1.
DataSet
:=DataModule1.
ADO
Query
1; dbgrid1.
DataSource
:= DataModule1.
DataSource
1; end; end. Unit2页面 unit Unit2; interface ...
数据库及相关技术
1,178
社区成员
18,939
社区内容
发帖
与我相关
我的任务
数据库及相关技术
C++ Builder 数据库及相关技术
复制链接
扫一扫
分享
社区描述
C++ Builder 数据库及相关技术
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章