1
我嘗試使用下面的函數SQL,錯誤「不能轉換*爲int」
alter function [dbo].[verClientUniq](@cid varchar(2))
returns int
begin
declare @nr int
select @nr = count(*)
from Clients
where clientId = @cid;
return @nr
end
當我執行它在我的程序裏面,我去查一下我的數據庫中的記錄是否存在過程「varchar'*'的第8行中的錯誤不能轉換爲int。」
這是怎麼發生的?如何解決它?
消息245,級別16,狀態1,過程verClientUniq,第8行
轉換轉換VARCHAR值 '*' 爲數據類型int時失敗。
我打電話的功能是這樣的:
exec @isUnique = verClientUniq @cid;
我假設它是sql服務器代碼,它在語法上是有效的。什麼是確切的錯誤信息? –
我已經寫了確切的錯誤消息,在將varchar值'*'轉換爲數據類型int時轉換失敗。 – Mocktheduck
你的函數至少遺漏了一個'AS',但是你能顯示你在存儲過程中如何調用這個函數嗎? (此外,在哈姆雷特問你之前,你還沒有寫出確切的錯誤信息。) –