Wir sind Werte speichern Zeichenfolge in einer Datenbank VarBinary Typ mit C# und BinaryFormatter.We auf Byte-Array umwandeln und dann speichern wir DataBaseConvert Byte-Array in String TransactSQL mit
public static byte[] ToBytes(stringvalue)
{
if (value == null)
return null;
byte[] inMemoryBytes;
using (MemoryStream inMemoryData = new MemoryStream())
{
new BinaryFormatter().Serialize(inMemoryData, value);
inMemoryBytes = inMemoryData.ToArray();
}
return inMemoryBytes;
}
OK, also wenn wir sparen Char "a", können wir "0x0001000000FFFFFFFF0100000000000000060100000001610B" in der Datenbank sehen. Nachdem wir die Daten abrufen und wieder in Zeichenfolge konvertieren können.
Können wir diesen binären Wert ("0x0001000000FFFFFFFF010000000000000006010000000001610B") in char ("a") konvertieren nur mit Transact SQL (so können wir Änderungen, Einfügungen, Vergleiche von SQL Server-Konsole)?
Vielen Dank.
Dank Rubens, aber diese Technik wird für ein anderes Framework (Entlib Contrib http://entlibcontrib.codeplex.com/) verwendet und kann es nicht ändern. Sie verwenden es, weil thay mehr Typen speichern kann: ints, string, images etc etc und wir wollen (nur wenn der type string ist) diese gespeicherten Werte in string konvertieren – Oscar
Oscar, kann 'BitConverter.GetBytes' nützlich sein? –
aber das ist eine Methode aus dem .Net-Framework, nicht wahr? Ich möchte nur SqlConsole verwenden. Ich programmiere es mit CLR Sql Funktionen, nach Kleinux. Danke nochmal. – Oscar