0
是否有方法可以獲取在SQL 2014中的插入時發生錯誤的字段的名稱。我插入了30多個字段並浪費了數小時,試圖找出錯誤的位置正在發生。似乎是一個簡單的調試功能,但我回來的錯誤是在插入語句時捕獲錯誤的字段名稱
消息8114,級別16,狀態5,2號線
錯誤轉換數據類型爲nvarchar到數字。
我已經通過插入表中的每個數字列,並嘗試將相應的數據轉換爲正確的數據類型,並找不到問題。
INSERT INTO [dbo].[Employee]
(
[EmployeeID]
,[FirstName]
,[LastName]
,[ManagerID]
,[CurrencyCode]
,[CountryCode]
,[JobTitle]
,[Grade]
,[IsPlanningEligible] -- BIT
,[HireDate]
,[LastSalaryReviewDate]
,[AnnualSalaryAmt] -- Money
,[AnnualSalaryRangeMinAmt] --'NUMERIC'
,[AnnualSalaryRangeMidAmt] --'NUMERIC'
,[AnnualSalaryRangeMaxAmt] --'NUMERIC'
,[PositionInSalaryRange]
,[MeritIsEligible] -- BIT
,[MeritIsLocked] -- BIT
,[MeritBudgetKey]
,[LegacyCompany]
,[FTEPct] --'NUMERIC'
,[PreviousYearPerformance]
,[LastIncreasePct] --'NUMERIC'
,[LastIncreaseReason]
,[Location]
,[CostCenter]
,[ManagerName]
,[MeritEffectiveDateByCountry]
,[HRBPPersonnelNumber]
,[HRBPName]
,[HREmployee]
,[LocalPersonnelNumber]
,[EmailAddress]
,[OrgLevel1]
,[OrgLevel2]
,[OrgLevel3]
,[OrgLevel4]
,[OrgLevel5]
,[OrgLevel6]
)
/*** IGT STAGING SELECT ***/
SELECT LTRIM(Str([Personnel Number], 25, 0))
,[Preferred First Name]
,[Last Name]
,CAST([Manager Personnel Number] AS NVARCHAR(50))
,[Currency]
,[Country]
,[Job Title]
,[Grade]
,CAST([Planning Eligible] AS BIT)
,[Date of Hire]
,[Last Increase Date]
,[Annual Base Salary_(as of mm/dd/yyyy) ]
,[Minimum of Range]
,[Midpoint of Range]
,[Maximum of Range]
,CAST([Position in Range] AS NVARCHAR(50))
,[Merit Eligible ]
,[MeritLocked]
,[Merit Budget %]
/*IGT Custom Fields */
,[Legacy Company]
,[FTE %]
,[Previous Year's Performance]
,[Last Increase (%)]
,[Last Increase Reason]
,[Location]
, CAST([Cost Center] AS NVARCHAR(50))
,[Manager Name]
,[Merit Effective Date (by Country)]
,CAST([HRBP Personnel Number] AS NVARCHAR(50))
,[HRBP Name]
,[HR Employee (yes/no)]
,[Local Personnel Number]
,[Email Address]
,[Org Level 1]
,[Org Level 2]
,[Org Level 3]
,[Org Level 4]
,[Org Level 5]
,[Org Level 6]
FROM [IGT_Compensation].[dbo].[IGT_Staging$]
這可能是來自sql server最煩人的錯誤。多年來一直存在連接問題來解決這個問題。爲什麼他們不能簡單地將錯誤的列名添加到錯誤中,這是我無法想象的。很顯然,發動機在發生故障時可以使用它。這非常類似於沒有列名稱的「數據將被截斷」錯誤。 –
添加插入語句 –
我正在考慮運行SQl Profiler反對它,但我不知道如果這甚至讓我那個字段名。 –