使用子查询进行多个数据插入时出错:转换无法将varchar转换为int

时间:2016-12-08 06:26:37

标签: sql-server sql-server-2008 in-subquery

我试图在一个表中插入多行,该表使用select语句作为子查询。当我只插入一行时它工作正常,但当我尝试插入多行时出错。

INSERT INTO sysdba.ACTIVITY ([ACTIVITYID], [USERID], [CONTACTID])
    (SELECT top 1
        (SELECT CAST(MAX(ACTIVITYID) AS INT) 
         FROM sysdba.ACTIVITY) + 
        ROW_NUMBER() OVER (ORDER BY ENTITYID),
        'admin',
        [ENTITYID]
    FROM 
        sysdba.CAMPAIGNTARGET
    WHERE 
        CAMPAIGNID = 'Q6UJ9A00056A')

我得到的错误是:

  

将varchar值“CALENDAR”转换为数据类型int时,转换失败。

0 个答案:

没有答案