如何在SQL Server中将varchar转换为float?

时间:2016-07-23 21:00:30

标签: sql-server sql-server-2008

我尝试将varchar转换为float并收到以下消息。

  

Msg 8114,Level 16,State 5,Line 41
  将数据类型varchar转换为float时出错。声明已经终止。

这就是我的尝试。

ALTER TABLE All_Active
ALTER COLUMN [BE #] float

请告诉我有一个简单的解决方案。这应该是float。它错误地导入SQL Server。

1 个答案:

答案 0 :(得分:0)

您的值不是有效的浮点值。如果要更改列,则首先更新日期,删除这些值:

update all_active
    set [BE #] = (case when isnumeric([BE #]) = 1 then [BE #] end);

然后更新alter table:

ALTER TABLE All_Active ALTER COLUMN [BE #] float