久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

操作數(shù)類型沖突

Operand Type Clash(操作數(shù)類型沖突)
本文介紹了操作數(shù)類型沖突的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!

問題描述

我有一個(gè)很長(zhǎng)的存儲(chǔ)過(guò)程,當(dāng)我執(zhí)行該過(guò)程時(shí)出現(xiàn)以下錯(cuò)誤:

I have a long stored procedure and when I execute the procedure I get the following error:

Msg 206, Level 16, State 2, Line 1
Operand type clash: varchar(max) is incompatible with sql_variant

所以為了解決問題,我已經(jīng)打印了問題所在,代碼是:

So to trouble shoot I have printed satetement where the problem is and the code is:

SELECT  'Name' ,
                7 ,
                CASE WHEN 'varchar' = 'varbinary'
                     THEN REPLACE(UPPER(sys.fn_sqlvarbasetostr([Name])), 'X', 'x')
                     ELSE CONVERT(VARCHAR(4000), [Name])
                END , 'varchar'
        FROM    ref.dbo.datatables
        WHERE   id = 12
        ORDER BY [ID]

所以當(dāng)我執(zhí)行上面的語(yǔ)句時(shí),它給我的錯(cuò)誤是:

So When I execute the above statement it is givng me the error as:

Msg 206, Level 16, State 2, Line 1
Operand type clash: varchar(max) is incompatible with sql_variant

在ref.dbo.datatables表中Name的數(shù)據(jù)類型是Varchar(MAX)

The datatype of Name is Varchar(MAX) in ref.dbo.datatables table

如何解決這個(gè)問題?

答案:

這就是我所做的工作:

SELECT 'Name',
        7,
        CASE WHEN 'varchar' = 'varbinary'
        THEN REPLACE(UPPER(sys.fn_sqlvarbasetostr(CONVERT(VARBINARY,[Name]))),'X','x')
        ELSE CONVERT(VARCHAR(4000),[Name])
        END,
        'varchar'
FROM ref.dbo.datatables
WHERE id = 12
ORDER BY [ID]

推薦答案

錯(cuò)誤是正確的,您不能隱式(或顯式)將 VARCHAR(MAX) 強(qiáng)制轉(zhuǎn)換為 sql_variant.如果 NameVARCHAR(MAX),您需要將其轉(zhuǎn)換為兼容類型(如 VARCHAR(8000) 以傳遞它作為 sys.fn_sqlvarbasetostr()

The error is correct, you can't implicitly (or explicitly) cast a VARCHAR(MAX) to sql_variant. If Name is a VARCHAR(MAX) you will need to convert it to a compatible type (like VARCHAR(8000) in order to pass it in as a parameter to sys.fn_sqlvarbasetostr()

見msdn:

sql_variant 對(duì)象可以保存任何 SQL Server 數(shù)據(jù)類型的數(shù)據(jù),除了 text、ntext、image、varchar(max)、nvarchar(max)、varbinary(max)、xml、timestamp 和 Microsoft .NET Framework 公共語(yǔ)言運(yùn)行時(shí) (CLR) 用戶定義的類型.sql_variant 數(shù)據(jù)的實(shí)例也不能將 sql_variant 作為其基礎(chǔ)數(shù)據(jù)類型.

sql_variant objects can hold data of any SQL Server data type except text, ntext, image, varchar(max), nvarchar(max), varbinary(max), xml, timestamp, and Microsoft .NET Framework common language runtime (CLR) user-defined types. An instance of sql_variant data also cannot have sql_variant as its underlying base data type.

如果您需要 sys.fn_sqlvarbasetostr() 的功能并且無(wú)法在不丟失數(shù)據(jù)的情況下向下轉(zhuǎn)換您的 col,您可能需要推出您自己的該功能版本.CLR 將是一個(gè)不錯(cuò)的選擇.

If you need the functionality of sys.fn_sqlvarbasetostr() and can't down convert your col without losing data, you may need to roll your own version of that function. CLR would be a good bet.

這篇關(guān)于操作數(shù)類型沖突的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

Converting Every Child Tags in to a Single Column with multiple Delimiters -SQL Server (3)(將每個(gè)子標(biāo)記轉(zhuǎn)換為具有多個(gè)分隔符的單列-SQL Server (3))
How can I create a view from more than one table?(如何從多個(gè)表創(chuàng)建視圖?)
Create calculated value based on calculated value inside previous row(根據(jù)前一行內(nèi)的計(jì)算值創(chuàng)建計(jì)算值)
How do I stack the first two columns of a table into a single column, but also pair third column with the first column only?(如何將表格的前兩列堆疊成一列,但也僅將第三列與第一列配對(duì)?) - IT屋-程序員軟件開發(fā)技
Recursive t-sql query(遞歸 t-sql 查詢)
Convert Month Name to Date / Month Number (Combinations of Questions amp; Answers)(將月份名稱轉(zhuǎn)換為日期/月份編號(hào)(問題和答案的組合))
主站蜘蛛池模板: 亚洲成人99| 国产精品爱久久久久久久 | 中文字幕一区二区三区四区五区 | 精品久久久久一区二区国产 | av色站 | 在线视频 亚洲 | 一级免费毛片 | 一区二区三区不卡视频 | 天天综合网天天综合色 | 午夜小电影 | 综合久久亚洲 | 国产精品射 | 亚洲成人免费在线 | 日韩在线视频免费观看 | 黄色在线免费观看 | 成人在线精品视频 | 亚洲欧美日韩精品久久亚洲区 | 国产免费一区二区三区网站免费 | 国产精品久久久亚洲 | 国产高清不卡 | 特级做a爱片免费69 精品国产鲁一鲁一区二区张丽 | 日本视频一区二区三区 | 国产欧美日韩在线一区 | 亚洲网站在线观看 | 亚洲一区二区视频 | 欧美激情综合五月色丁香小说 | 午夜婷婷激情 | 天天草天天干天天 | 日韩精品视频在线 | 国产视频一区二区 | 久久久久久久国产 | 97视频免费 | 日韩欧美国产一区二区三区 | 欧美日产国产成人免费图片 | 青青草av在线播放 | 成人高清在线 | 伊人久久伊人 | 一区二区三区四区av | 日本久久综合网 | 青青草原精品99久久精品66 | 日本三级全黄三级三级三级口周 |