新手求助SQL sever问题:从数据类型varchar转换为float时出错。

scuwxin 2011-03-17 01:51:24
数据库表里只有两个列csname和csdata,前者是nchar类型,后者是float类型。写的函数目的是去数据库更新指定条件的数据,我的C#代码如下:
public void updatedata(string uname,string udatastr, string biao, string tiaojian)
{
string connString = "server = " + server + "; uid = " + user + "; pwd = " + password + ";
database = " + databa + "; Connect Timeout=20";
SqlConnection conn = new SqlConnection(connString);

try
{
string sqlstr = "UPDATE " + biao + " SET " + uname + " = " + udatastr + " WHERE " + tiaojian;
MessageBox.Show(sqlstr);
SqlCommand sqlcmd = new SqlCommand(sqlstr, conn);
conn.Open();
sqlcmd.ExecuteNonQuery();
conn.Close();
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}


}

调用这个函数时出现的消息框显示sql命令字符串是正确的:UPDATE yp.dbo.thcs SET csdata = 0.7148 WHERE csname = 'gas90cs6'

但是确定后继续执行下面的代码就出现错误消息框:从数据类型varchar转换为float时出错。
不知是哪里有问题,大侠们教教我,感激不尽。
...全文
1899 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
scuwxin 2011-03-17
  • 打赏
  • 举报
回复
唉,低级错误啊,把字段名字写错了。我自己刚发现,分还是给你们说对了的吧。谢谢大家了。
快溜 2011-03-17
  • 打赏
  • 举报
回复
从数据类型varchar转换为float时出错。看字段类型,这里看不出。
AcHerat 2011-03-17
  • 打赏
  • 举报
回复
但是确定后继续执行下面的代码就出现错误消息框:从数据类型varchar转换为float时出错。

是否有非数值型的数据存在,是否混加了空格。
--小F-- 2011-03-17
  • 打赏
  • 举报
回复
csname列有不能转换成FLOAT类型的数据
Xiao_Ai_Mei 2011-03-17
  • 打赏
  • 举报
回复
说明里面有非可转换数值型的字符串

select * from tb where isnumeric(col)=0 看看

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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