Chúng tôi đang giá trị chuỗi cửa hàng trong một cơ sở dữ liệu sử dụng varbinary loại sử dụng C# và BinaryFormatter.We chuyển sang mảng byte và sau đó chúng tôi lưu vào DataBaseChuyển đổi Byte Array chuỗi sử dụng TransactSQL
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, Vì vậy, nếu chúng ta tiết kiệm char "a", chúng ta có thể thấy "0x0001000000FFFFFFFF0100000000000000060100000001610B" trong cơ sở dữ liệu. Sau khi chúng tôi có thể truy xuất dữ liệu và chuyển đổi thành chuỗi.
Chúng ta có thể chuyển đổi giá trị nhị phân này ("0x0001000000FFFFFFFF0100000000000000060100000001610B") thành char ("a") chỉ sử dụng giao dịch SQL (vì vậy chúng ta có thể sửa đổi, chèn, so sánh từ giao diện điều khiển máy chủ sql)?
Thanks a lot.
Cảm ơn Rubens, nhưng tecnique này được sử dụng cho một khuôn khổ khác (Entlib Contrib http://entlibcontrib.codeplex.com/) và không thể thay đổi nó. Họ sử dụng nó bởi vì sau đó thay có thể lưu trữ nhiều loại: ints, string, images etc vv và chúng ta muốn (chỉ khi kiểu string) chuyển đổi giá trị được lưu trữ này thành chuỗi – Oscar
Oscar, có thể 'BitConverter.GetBytes' hữu ích không? –
nhưng đây là một phương pháp từ khung .Net, phải không? Tôi chỉ muốn sử dụng SqlConsole. Tôi đang lập trình nó bằng cách sử dụng các hàm CLR Sql, theo Kleinux. Cảm ơn bạn lần nữa. – Oscar