怎么在DBGRID来排序呀?

lwjhugo 2003-03-14 06:38:16
我用BDE的query来连接DBGRID,现想对数据进行排序.我的记录设有主键的,也用了sql语句(Orderby)来排序,但不论怎样都系按原来的主键按序的.怎么样解决????
...全文
95 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
bit_hj 2003-04-12
  • 打赏
  • 举报
回复
但如果query1中有与query3相连的lookup字段,该怎样排序。
weixing979 2003-04-02
  • 打赏
  • 举报
回复
上面的后几行排版没弄好,自己看吧
weixing979 2003-04-02
  • 打赏
  • 举报
回复
一个例子
用BCB自带的库
Query1的databasename 用的是BCDEMOS ,SQL是select * from parts.db

DBGrid的 DBGridTitleClick事件中

void __fastcall TForm1::DBGrid1TitleClick(TColumn *Column)
{ Edit1->Text=Column->FieldName;
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add("Select * from parts.db order by ");
Query1->SQL->Add(Edit1->Text ); //改为Query1->SQL->Add(Column->FieldName);没好使 // Query1->SQL->Add("desc") 或 Query1->SQL->Add("asc");
Query1->Open();
}

可实现单击DBGrid的Title按钮,对该字段排序。
gary_jojo 2003-03-31
  • 打赏
  • 举报
回复
我不知道,学习吧.
myredsun 2003-03-29
  • 打赏
  • 举报
回复
同意watercelery(空心菜)
afei2002 2003-03-29
  • 打赏
  • 举报
回复
好像用的是ADO,在其它的地方能控制吗~~~~~~~~
afei2002 2003-03-29
  • 打赏
  • 举报
回复
向大家学习~~
dacaifu 2003-03-28
  • 打赏
  • 举报
回复
DataGrid OnTitleClick
DataSet->IndexFieldNames = ...
yui 2003-03-28
  • 打赏
  • 举报
回复
试了一下,是我错了,问题解决
huang_jihua 2003-03-28
  • 打赏
  • 举报
回复
DBGrid的ONTitleClick里面就有Column
chongyiren 2003-03-28
  • 打赏
  • 举报
回复
接分
yui 2003-03-28
  • 打赏
  • 举报
回复
你的办法不可实现的,column是什么?无论是tadotable还是tadoquery还是tdbgrid都没有这个属性
watercelery 2003-03-15
  • 打赏
  • 举报
回复
在DBGrid的 DBGridTitleClick事件中写就可以了



TADOQuery* temp=(TADOQuery*)DBGrid1->DataSource->DataSet;
if(flag==1)//当前是升序
{
temp->Sort=Column->FieldName+" DESC";
flag=0;
}
else if(flag==0)//当前是降序
{
temp->Sort=Column->FieldName+" ASC";
flag=1;
}
cuptbluesky 2003-03-14
  • 打赏
  • 举报
回复
可否贴出sql代码看看

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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