简体   繁体   English

SQL Server:将数据类型varchar转换为数值时出错

[英]SQL Server: error converting data type varchar to numeric

Here is the situation. 这是情况。 I have a SQL Server table that contains the following columns: 我有一个SQL Server表,其中包含以下列:

TaskOrder (varchar(50), null)
Labor (decimal(18,2), null)
LaborCLIN (varchar(50), null)

I am creating a stored procedure that passes in the parameter: @TaskOrder 我正在创建一个传递参数的存储过程: @TaskOrder

I created a temp table as follows: 我创建了一个临时表,如下所示:

declare @miprfin table
(
    TaskOdr varchar(50),
    Labor decimal(18,2),
    LaborClin varchar(50)
)

When I run the following query: 当我运行以下查询时:

insert into @miprfin
   select TaskOrder, LaborCLIN, sum(labor) as labor
   from MIPRFIN 
   where TaskOrder = @TaskOrder
   group by TaskOrder, LaborCLIN
   order by LaborCLIN

I get the following error message: 我收到以下错误消息:

Msg 8114, Level 16, State 5, Line 404 讯息8114,第16级,状态5,第404行
Error converting data type varchar to numeric. 将数据类型varchar转换为数字时出错。

I do not see where it is trying to convert any data. 我看不到它试图转换任何数据的位置。

I am using SQL Server 2012 Management Studio 我正在使用SQL Server 2012 Management Studio

You should always put the columns in an insert , and this is why: 您应该始终将列放在insert ,这就是为什么:

insert into @miprfin(TaskOdr, LaborCLIN, Labor)
    select TaskOrder, LaborCLIN, sum(labor) as labor
    from MIPRFIN 
    where TaskOrder = @TaskOrder
    group by TaskOrder, LaborCLIN
    order by LaborCLIN;

You were putting labor into the laborclin field and vice versa. 您正在将labor投入到laborclin领域,反之亦然。 Hence the error. 因此,错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 SQL Server 2012将数据类型varchar转换为数值时出错 - SQL Server 2012 Error converting data type varchar to numeric 在sql server中将数据类型varchar转换为数字时出错 - Error converting data type varchar to numeric in sql server 在SQL Server 2008中将数据类型varchar转换为数值时出错 - Error converting data type varchar to numeric in sql server 2008 在SQL Server中将varchar转换为数据类型数值的算术溢出错误 - Arithmatic overflow error converting varchar to data type numeric in sql server 在SQL Server中将varchar转换为数值类型的算术溢出错误 - Arithmetic overflow error converting varchar to data type numeric in SQL Server 在SQL中将数据类型varchar转换为数字时出错 - Error converting data type varchar to numeric in SQL SQL - 将数据类型varchar转换为数字时出错 - SQL - Error converting data type varchar to numeric 如何修复 SQL 错误“将数据类型 varchar 转换为数字时出错”? - How to fix the SQL error "Error converting data type varchar to numeric"? “使用VBA将数据从Excel导出到SQL Server时,将数据类型varchar转换为数字时出错” - “Error converting data type varchar to numeric” when I export data from Excel to SQL Server using VBA 如何解决SQL Server中的“将varchar转换为数据类型数值的算术溢出错误”错误? - How to solve “Arithmetic overflow error converting varchar to data type numeric” error in sql server?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM