У меня проблема с преобразованием этих байтов в символы ASCII, необходимо выполнить аналогичное преобразование с использованием Oracle PL/SQL, исходное - в MS SQLserver: Как преобразовать байты в символы ASCII, используя Oracle PL/SQL
/// </summary>
/// <param name="blob"></param>
/// <returns></returns>
[Microsoft.SqlServer.Server.SqlFunction(IsDeterministic = true, IsPrecise = true)]
public static String VarbinaryToVarchar(SqlBytes blob)
{
if (blob.IsNull) return null;
byte[] buffer = blob.Buffer;
char[] res = new char[buffer.Length * 2];
for (int i = 0; i < buffer.Length; i++)
{
res[i * 2] = (char)((buffer[i] & 0xF) + 65);
res[i * 2 + 1] = (char)(((buffer[i] >> 4) & 0xF) + 65);
}
return new String(res);
}
Спасибо заранее, ребята!
Вам нужна помощь только от людей, знакомых с SQL Server, или от людей, которые работают только с Oracle? Я не знаю, что должен делать ваш код; можете ли вы объяснить свое требование на общем языке? Неважно, как это разрешено в коде. – mathguy
Является ли ваше требование, как перейти от двоичного к ascii в оракуле? – Jucan
Проблема заключается в том, что я действительно не знаю, как этот алгоритм работает ... Я только что получил, что один и нужно сделать то же в Oracle ... Только то, что я знаю, что для ввода: 0000EB862CB8024892CD419A26BB3AE Это собирается дать мне выход: AAAALOGIMCILCAIEJNBEKJGCLIDLOK Просто нужно выяснить, как это работает ... –