select值必须与插入列的数量相匹配

我有以下查询…检查并重新检查insert和select语句中的值的types和数量。 我无法弄清楚什么是错的。

insert into [Subscription].dbo.SUBSCRIPTION ( CreateDate, StartDate, ProductId, Processor, IntervalType, IntervalLength, TotalOccurrences, TrialOccurrences, Status, Amount, --10 TrialAmount, FirstName, LastName, Address, City, State, Zip, Country, Phone, Email, --20 CardNumber, CardExpMonth, CardExpYear, Custom1, Custom2, Custom3, SecurityCode, CancellationDate, ApplicationName, OfferTypeID, --30 OfferID, CampaignID, SubID, OrderID) --34 items select o.CreateDate, DATEADD(day, 4, o.createdate) as startdate, '3B85ECD0-6CC0-4A68-BFB1-922ADC74F5B0' 'cb_test', 1, 1, 99, 0, 0, 59.84, --10 0.00, o.First_Name, o.Last_Name, o.Address_1, o.City, o.State, o.Zip_Code, o.Country, o.Phone1, o.Email, --20 o.CC_Number, o.CC_Exp_Month, o.CC_Exp_Year, 'imported 1/11/2010', null, null, '', null, 'company', null, --30 o.ofid, o.cid, o.sid, o.oid --34 items from [pro].dbo.slp_Order o where o.oid> 7782221 and o.Isbilled = 1 

您在语句的SELECT部分​​中的ProductID值后错过了逗号。

应该读:

 '3B85ECD0-6CC0-4A68-BFB1-922ADC74F5B0', 

订阅表是否具有自动递增键? 某些数据库要求您为该ID提供一个值,即使它被数据库覆盖。 即

插入tabl2(id,name,address)从tableb中select0,myname,myaddress;