1
我寫下面的SQL過程:不允許將數據類型xml隱式轉換爲nvarchar。使用CONVERT函數來運行此查詢
ALTER PROCEDURE [dbo].[spc_InsertSubjectToContentRelation]
(
@pCourseGUID XML,
@pSubjectId XML,
@pAssessmentIds XML,
@pVideoIds XML
)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @CourseGUID NVARCHAR(50);
DECLARE @SubjectId NVARCHAR(50);
DECLARE @AssessmentIds NVARCHAR(MAX);
DECLARE @VideoIds NVARCHAR(MAX);
SET @CourseGUID = Convert(NVARCHAR,@pCourseGUID);
SET @SubjectId = Convert(NVARCHAR,@pSubjectId);
SET @AssessmentIds = Convert(NVARCHAR,@pAssessmentIds);
SET @VideoIds = Convert(NVARCHAR,@pVideoIds);
INSERT INTO SubjectToAssessmentAndVideoRelation VALUES (@pCourseGUID, @pAssessmentIds, @pAssessmentIds, @pVideoIds)
END
當我運行這個程序,我發現了錯誤:
Implicit conversion from data type xml to nvarchar is not allowed. Use the CONVERT function to run this query. How can I resolve this?
爲什麼要將參數聲明爲一種類型,如果這不是您的過程需要的類型? –
@Damien_The_Unbeliever,因爲表中列的類型不是xml類型 – Jaguar