0
由於我在Nvarchar
內部使用了Int
變量,因此我有這段代碼出錯。如果我使用SQL Server 2005:幫助連接Nvarchar和Int
CAST(CAST(COALESCE(@FattAnnoCorrente) as int) as varchar(255))
我,而不是讓這些錯誤
Conversion failed when converting the nvarchar value 'ANNO 2016 -' to data type int.
:
Msg 102, Level 15, State 1, Line 154
Incorrect syntax near ')'.
Msg 156, Level 15, State 1, Line 173
Incorrect syntax near the keyword 'FOR'.
你能幫我解決這個問題
DECLARE @FattAnnoCorrente INT;
DECLARE @Tabscontianno1 NVARCHAR(MAX);
SET @Tabscontianno1 =
N'<p align="left"><b>ANNO ' + @Anno1 + ' - </b><b>' + @FattAnnoCorrente + '<br>
</b></p>
<table height="62" border="1" cellpadding="2" cellspacing="2"
width="501">
<tbody>
<tr>
<td valign="top">FATTURATO<br>
</td>
<td valign="top">SCONTO<br>
</td>
</tr>' + CAST ((
SELECT
td = SUM(TOTNETTORIGA), '',
td = SCONTIESTESI
FROM .dbo.TESTEDOCUMENTI
INNER JOIN .dbo.RIGHEDOCUMENTI
ON PROGRESSIVO=IDTESTA AND TOTNETTORIGA <>'0'
WHERE CODCLIFOR = @CodiceCliente AND .dbo.TESTEDOCUMENTI.DOCCHIUSO = '0' AND .dbo.TESTEDOCUMENTI.BLOCCATO = '0' AND .dbo.TESTEDOCUMENTI.TIPODOC = 'FVC' AND .dbo.TESTEDOCUMENTI.ESERCIZIO = YEAR(GETDATE())
GROUP BY TESTEDOCUMENTI.ESERCIZIO,SCONTIESTESI
FOR XML PATH('tr'), TYPE)
AS NVARCHAR(MAX)) +
N' </tbody>
</table>'+
N'<BR/>' ;
我得到這個錯誤。
插入後,它在nvarchar
可變我需要把它格式化爲錢這樣的:
'€ ' + REPLACE(CONVERT(varchar, CAST(@FattAnnoCorrente AS money), 105),',','.')
謝謝你們!
有些值是什麼樣的? – BigBlack
@BigBlack:合併的一些非空值 – TheGameiswar