为什么从数据库取出的数据无法比较?

lbeast 2006-04-03 10:37:09
数据库中
字段 val 类型char(10)

连接数据库后用select val from I where ....

取出数据
val = myDataReader.GetString(0); //假设val值为"全局"

这时用label显示val正确

但我用if (val=="全局")
XXXXXXXXXXX ;
却比较不了?
为什么呢?
谢谢大家!
...全文
121 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
lbeast 2006-04-03
  • 打赏
  • 举报
回复
确实,只要trim()就行了 不需要tostring() 刚才是怎么回事呢?
lbeast 2006-04-03
  • 打赏
  • 举报
回复
啊 对不起大家 我试错了 可以了
val.tostring().trim();
两个都要呵呵
结贴:)
MyLf 2006-04-03
  • 打赏
  • 举报
回复
myDataReader.GetString(0)的返回值本来就是string,加上ToString()是多此一举。

你的val变量是什么类型的?
wsmall1 2006-04-03
  • 打赏
  • 举报
回复
没有ToString(),另外建议采用
String.Equals()方式比较。程序好像少一步操作。
lbeast 2006-04-03
  • 打赏
  • 举报
回复
tostring 和 trim全都试过了啊
不行啊
if (val.Equals("全局"))刚才也试了一下 也是不行啊
????
xujunsweet 2006-04-03
  • 打赏
  • 举报
回复
val = myDataReader.GetString(0).ToString();转换为string即可
pegtop 2006-04-03
  • 打赏
  • 举报
回复
后面少ToString(),把Char转变成string
孟子E章 2006-04-03
  • 打赏
  • 举报
回复
也可能有空格,需要Trim()一下
孟子E章 2006-04-03
  • 打赏
  • 举报
回复
val = myDataReader.GetString(0).ToString(); //假设val值为"全局"
yf1025 2006-04-03
  • 打赏
  • 举报
回复
字符可以用Equals来判断
if (val.Equals("全局"))
XXXXXXXXXXX ;

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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