coderwu
路人甲
路人甲
  • 注册日期2004-12-13
  • 发帖数2
  • QQ
  • 铜币116枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1801回复:8

[求助]请问:关于 SearchExpression 的问题!

楼主#
更多 发布于:2005-01-05 22:29

<P>CMoLayers layers;
CMoMapLayer layer;
CMoRecordset recs;
CString expression; </P>


<P>layers = m_CtrlMap.GetLayers();
layer = layers.Item(COleVariant(TEXT("公交线路")));
expression = "";
recs = layer.SearchExpression( expression );</P>
<P>long lRecordCnt;
lRecordCnt = recs.GetCount();</P>
<P>此时lRecordCnt = 4,结果正确。</P>
<P>以上代码改为:
expression = "(线路编号 = 304 )";
// "公交线路"表中"线路编号"字段类型为long,其中一条记录的该字段值为304。
recs = layer.SearchExpression( expression );</P>
<P>long lRecordCnt;
lRecordCnt = recs.GetCount();</P>
<P>此时lRecordCnt = -1,请问我要查找“线路编号”为304的所有记录该如何写?</P>
<P>谢谢!</P>
喜欢0 评分0
tomas.tang
路人甲
路人甲
  • 注册日期2004-05-11
  • 发帖数113
  • QQ
  • 铜币491枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2005-01-09 23:25
 expression = "(线路编号 = 304 )";——〉expression = "线路编号 = 304 ";试试
举报 回复(0) 喜欢(0)     评分
cool小飞侠
路人甲
路人甲
  • 注册日期2004-08-02
  • 发帖数122
  • QQ
  • 铜币4枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2005-01-10 10:57
我也遇到过这种情况。
但是我跳开走了。好像如果searchexpression把所有记录都取出来的话,就对
如果只取出就是-1,无论你取哪条记录。不知道为什么?!帮顶
举报 回复(0) 喜欢(0)     评分
tomas.tang
路人甲
路人甲
  • 注册日期2004-05-11
  • 发帖数113
  • QQ
  • 铜币491枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2005-01-11 03:34
<P>表达式错误!</P>
举报 回复(0) 喜欢(0)     评分
一步穷
路人甲
路人甲
  • 注册日期2003-12-15
  • 发帖数107
  • QQ
  • 铜币221枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2005-01-13 09:42
<P>我有这样的代码,你参照它加上分组命令看看.</P>
<P>SelectRd = Initi.Lline.SearchExpression("End = '"+LBegin.ToString()+"' ORDER BY End ASC"); </P>
举报 回复(0) 喜欢(0)     评分
早起的虫子
路人甲
路人甲
  • 注册日期2004-12-28
  • 发帖数9
  • QQ
  • 铜币136枚
  • 威望0点
  • 贡献值0点
  • 银元0个
5楼#
发布于:2005-01-13 15:58
<P>大3的时候学过C#,我觉得这个表达式有问题,『 "公交线路"表中"线路编号"字段类型为long,其中一条记录的该字段值为304。』这应该是字段的类型不匹配,你可以试一下强制类型转换。转换前现看看数据库中long,到C# 中变成什么了。(我以前碰到过的C#会把smallint变成byte的)</P><P>还有我刚学Mo,我现在有一个项目Gis主要考我做,我以前是做Mis的,没什么经验,如果希望那位有经验的仁兄帮我一下</P>
举报 回复(0) 喜欢(0)     评分
tomas.tang
路人甲
路人甲
  • 注册日期2004-05-11
  • 发帖数113
  • QQ
  • 铜币491枚
  • 威望0点
  • 贡献值0点
  • 银元0个
6楼#
发布于:2005-01-16 21:05
<TABLE fixed; WORD-BREAK: break-all" width="90%" border=0><TR><TD 9pt; LINE-HEIGHT: 12pt" width="100%"><P>数字型字段: <B></B>
expression = "线路编号 = 304 ";</P><P>字符型字段:</P></TD></TR></TABLE>expression = "线路编号 = '304 ' ";
举报 回复(0) 喜欢(0)     评分
cool小飞侠
路人甲
路人甲
  • 注册日期2004-08-02
  • 发帖数122
  • QQ
  • 铜币4枚
  • 威望0点
  • 贡献值0点
  • 银元0个
7楼#
发布于:2005-01-24 10:31
究竟怎么回事??    
举报 回复(0) 喜欢(0)     评分
袁绍伦
路人甲
路人甲
  • 注册日期2003-08-08
  • 发帖数654
  • QQ164646905
  • 铜币1336枚
  • 威望0点
  • 贡献值0点
  • 银元0个
8楼#
发布于:2005-01-25 18:08
<P>构造的Sql语句在分析器中测试一下就可以了。如果成功,那么就一定,否则就有可能出现问题。</P>
愿意和大家交朋友! QQ:47559983 MSN:shaolun_yuan@hotmail.com eMail:shaolun-yuan@163.com
举报 回复(0) 喜欢(0)     评分
游客

返回顶部