2012-01-26 19 views
15

Khi tôi chạy truy vấn sql tôi có một cái gì đó như thế này:Cập nhật bảng chèn dữ liệu VARBINARY

Disallowed chuyển đổi ngầm từ kiểu dữ liệu varchar để kiểu dữ liệu varbinary .... Sử dụng chức năng CONVERT để chạy truy vấn này . (Mức độ nghiêm trọng 16) `

Các dữ liệu tôi muốn chèn trông giống như

'00001200000000000010000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF...FFF' 

Làm thế nào để thực hiện truy vấn này?

Query trông giống như:

UPDATE <table> SET VARBINARY_DATA = '00001200000000000010000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF....' WHERE ID = 12 
+1

chúng ta có thể kiểm tra truy vấn – Pankaj

Trả lời

42

Từ SQL Server 2005 trở đi CONVERT làm những gì bạn muốn:

CONVERT(varbinary(2000), '00001340132401324...', 2) 

Các phong cách để chuyển đổi sang/từ nhị phân là:

  • 0 : Dữ liệu thô, ascii codepoints trở thành byte nhị phân, UTF-16 codepoints trở thành hai byte mỗi.
  • 1: Định dạng Hex, bắt đầu bằng '0x'
  • 2: Định dạng Hex, không bắt đầu bằng '0x'

Xem MSDN:

+0

Ben. Vui lòng chỉnh sửa câu trả lời của bạn để tôi có thể upvote. Tôi đã phải bấm nút sai tuần trước .... ý định của tôi không phải là để downvote nó. – granadaCoder

+0

Cảm ơn các nhận xét thô/định dạng. Thực sự cứu tôi. –

+0

@granadaCoder, done, cheers. – Ben

Các vấn đề liên quan