注册 登录
编程论坛 ASP.NET技术论坛

SqlDataReader读出的数据要和TextBox.Text比较大小,可是不同类型,怎么办?附码

chashen8888 发布于 2007-05-28 19:35, 1503 次点击

ASP.NET编写的程序己经和SQL连接上了,但是我用SqlDataReader读取数据时,表内的"money"列是"smallmoney"类型的,或者也可以当它是浮点型.但是用SqlDataReader读出来的是字符型。我想将读出来的数和TextBox.Text的数据比较大小。大家想想办法呀。代码如下:
SqlConnection myConnection=new SqlConnection();
string strConn="server=Localhost;uid=sa;pwd=123456;database=stucard";
myConnection.ConnectionString=strConn;
string SQLcmd="select * from campuscard where campuscard_id='"+TextBox1.Text+"'";
SqlCommand myCommand=new SqlCommand(SQLcmd,myConnection);
myCommand.Connection.Open();
SqlDataReader myReader=myCommand.ExecuteReader();
if(myReader.Read())
{
if(myReader["money"].ToString()>"TextBox2.Text")
以下省略
}
就是这一句有问题if(myReader["money"].ToString()>"TextBox2.Text"),类型有错
各位高手,怎么做呀?万分感谢!!!!


5 回复
#2
GrimFish2007-05-28 19:51

if(myReader["money"].ToString()>"TextBox2.Text") 两个string 值是不能做数据比较的。

money的类型是浮点类型

if(Convert.ToDouble(myReader["money"].ToString())>Convert.ToDouble(TextBox2.Text))

#3
chashen88882007-05-28 20:01
谢谢你啦,等下班后试试.我也听过用Convert.ToDouble类型转换,但是不知怎么用.谢谢你的代码啦
#4
tel19822007-05-29 08:46
Convert.ToDouble就是转换成精度形的。
#5
bygg2007-05-29 09:22
把读出来的myReader["money"].ToString()和TextBox2.Text里面的值都进行转换成float型或者是double型.再比较.这样还默认地判断了输入到TextBox2里面的数据的格式是否正确..
#6
chashen88882007-05-30 20:48
谢谢啦
1