子查询返回的值超过1。
问题描述:
子查询返回的值超过1。当子查询遵循=,!=,<,< =,>,> =或当子查询用作表达式时,这是不允许的。子查询返回的值超过1。
我创建SP,我想获得PHONENUMBERS,分裂他们,然后插入到数据库
ALTER proc [dbo].[Mysp_ExistphoneInsert]
@Numbers nvarchar(MAX),
@countryID int
as
insert into tblPhoneNumber (PhoneNumber , [Enabled] , CountryID)
Values ((select Item from dbo.MyFunc_Split(@Numbers, ',')) , 1 , @countryID)
它我的数据PAS的样品@numbers: “201001000009,201001000006,201001000005,201001000004,201001000002, 2010.01亿,”
答
使用insert . . . select
,而不是insert . . . values
:
insert intotblPhoneNumber(PhoneNumber, [Enabled], CountryID)
select Item, 1, @countryID
from dbo.MyFunc_Split(@Numbers, ',');