sql-server
  • sql-server-2008
  • tsql
  • sql-server-2005
  • 2016-08-09 76 views 0 likes 
    0

    不相容當我嘗試動態創建的XML插入到一個臨時表的顯示一個錯誤操作數類型衝突:圖像是使用XML

    「操作數類型衝突:圖像是使用XML不兼容」。

    我在執行查詢時就已經分割了查詢,只需選擇其工作的XML即可。唯一的問題是它不允許插入到表中。

    "SET @sSQL1 = ' 
        SELECT ' + @ColumnList + ' 
        FROM TB1 IPI WHERE TBID= ' + CAST(@ID as varchar(10)) +' FOR XML RAW (''TB'') ,ROOT(''Table'') ' 
    
    INSERT INTO @TBLTRANSXML(INCTRANSXML)   
    EXEC (@sSQL1)" 
    
    +1

    首先,這意味着你一直沒有注意到微軟已經推出了十多年的警告:[ntext,text and image](https://msdn.microsoft.com/zh-CN/en -gb/library/ms187993.aspx):**將在未來版本的SQL Server中刪除** ntext **,** text **和** image **數據類型。避免在新開發中使用這些數據類型工作,並計劃修改當前使用它們的應用程序「 –

    +1

    請閱讀[本社區討論](http://meta.stackoverflow.com/q/326569/472495)關於緊急求助,並讓我知道你對它的看法。請用'@ halfer'平息我,謝謝。 – halfer

    +0

    @Damien_The_Unbeliever在那張表裏沒有圖像或者ntext或文本字段 – shyam

    回答

    0

    我得到這個

    "SET @sSQL1 = 'select (
    SELECT ' + @ColumnList + ' 
    FROM TB1 IPI WHERE TBID= ' + CAST(@ID as varchar(10)) +' FOR XML RAW (''TB'') ,ROOT(''Table'')) ' 
    
    INSERT INTO @TBLTRANSXML(INCTRANSXML)   
    EXEC (@sSQL1)" 
    

    在前面添加一個選擇就能解決問題。

    相關問題