0
SQl Server 2008 데이터베이스에 연결하는 C++/CLI 응용 프로그램을 만들고 있습니다. varbinary 필드에 저장된 짧은 정수의 배열을 어떻게 retireive 할 수 있습니까? 짧은 정수 배열을 바이트 배열로 변환 한 후 varbinary 필드에 저장합니다.SQL Server에서 정수 배열을 다시 얻는 방법은 무엇입니까?
SQl Server 2008 데이터베이스에 연결하는 C++/CLI 응용 프로그램을 만들고 있습니다. varbinary 필드에 저장된 짧은 정수의 배열을 어떻게 retireive 할 수 있습니까? 짧은 정수 배열을 바이트 배열로 변환 한 후 varbinary 필드에 저장합니다.SQL Server에서 정수 배열을 다시 얻는 방법은 무엇입니까?
유감스럽게도 수동으로 변환해야합니다. C에서 byte []를 사용하고 sql에서 varbinary를 사용해보십시오.
이 힘은
ALTER FUNCTION [dbo].[binToINT]
(
@bin varbinary(max)
)
RETURNS @result table(val int)
AS
BEGIN
if @bin is null
return
declare @ptr smallint = 0, @size smallint = 4
while (@ptr) * @size < LEN(@bin)
begin
insert into @result(val)
values(substring(@bin, (@ptr* @size) + 1, @size))
set @ptr += 1
end
return
END
을하는 데 도움이 정렬 된
declare @result varbinary(max) = 0x
select @result = @result + cast(CAST(token as int) as BINARY(4))
from ...
후하지만 나를 위해, 나는 정수 [] 데이터 타입
감사가 오픈 소스, 데이타베이스입니다 postgre를 사용합니다. 그것은 내가 찾고 있었던 정확하게 wasnt한다. 그러나 그것은 도움을했다. – DPD