나는 2 일 동안이 문제로 벽에 머리를 대고 있었고 내 vbscript/입술은 녹슬 었습니다.ado/vbscript를 사용하여 저장된 proc의 nvarchar 필드에 유니 코드 데이터를 보내려면 어떻게해야합니까?
레거시 제품을 상속 받았습니다. 일부 데이터를 저장하기 전에 기본 암호화를 수행하고 데이터베이스에서 데이터를 읽을 때 암호 해독 방법을 포함하는 방법이 포함되어 있습니다.
암호화 된 값을 화면에 덤프 한 다음 암호화 된 값을 원본만큼 잘 복호화 할 수 있습니다.
문제는 데이터베이스입니다.
이 데이터를 저장된 proc로 보내려고하면 일부 문자가 문자 # 65533 (물음표가있는 다이아몬드)으로 바뀝니다. decrypt 메서드가이 데이터를 저장하면 해당 홀수 문자로 수행 할 작업을 알 수 없습니다.
나는 또한 adVarWChar
Set cmd = Server.CreateObject("ADODB.Command")
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "_sp_InsertData"
cmd.ActiveConnection = DefaultConnectionString
cmd.Parameters.Append cmd.CreateParameter("@somevariable", _
adVarWChar, _
adParamInput, _
255, _
MethodThatReturnsUnicodeDataThatDumpsToTheScreenJustFine())
cmd.Execute
과 NVARCHAR 필드의 것을 나타내는 해요 : 나는 필드에 암호화 된 데이터를 붙여 SQL Server Management Studio를 통해 저장된 프로 시저를 실행할 수 있으며, 그것은 잘 작동합니다. 해독 방법은 정확히 무엇을 해야하는지 알고 있습니다.
은 유니 코드 형식으로 저장된 asp 파일 자체입니까? – John
메모장 ++가 그렇다고합니다. – TimWeis75
MethodThatReturnsUnicodeDataThatDumpsToTheScreenJustFine()에 대한 코드를 게시 할 수 있습니다. 널 문자 종료 및 길이와 같은 몇 가지 사항이 중요합니다. – Papasmile