Я пытаюсь выполнить хранимую процедуру, как следующим образом:набор UniqueIdentifier в Java CallableStatement
CallableStatement cs = this.con.prepareCall("{call getDeliveryConfirmations(?)}");
cs.setString(1, "545A6F33-A22A-47A6-AF97-0D952F2D80D7");
Resultset rs = cs.executeQuery();
Как вы можете видеть, я устанавливаю Guid/UniqueIdentifier в отзывном заявлении в качестве параметра перед выполнением .. . Но, как вы можете также сделать из, что я использую метод «SetString» на объекте CallableStatement и в результате я получаю эту ошибку:
com.microsoft.sqlserver.jdbc.SQLServerException: Conversion failed when converting from a character string to uniqueidentifier.
Я бы себе представить, что если бы был способ, как 'setGuid' или что-то для объекта callablestatement, что у меня не будет этой проблемы ... Любой знаете об обходном пути и т. д.?
Edit:
код для хранимой процедуры '' getDeliveryConfirmations
USE [VodacomXml2Sms]
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
BEGIN
SET NOCOUNT ON;
select * from OutgoingDeliveryConfirmations
where smsGuid = @selectedGuid
END
Не могли бы вы также отправить код для 'getDeliveryConfirmations' (по крайней мере, декларацию)? –
уверен, что просто gimme a sec ... :-) – Tiwaz89
Там вы идете ... Очевидно, @selectedGuid - это параметр, который я отправляю в сохраненный proc в код Java – Tiwaz89