2014-09-23 32 views
0

我面臨的一個問題,而在SQL Server中插入二進制值二進制列2012如何刪除尾隨從二進制領域零SQL Server 2012中

我能夠插入值,以二進制列,但當我查詢插入的二進制值時,我可以看到插入的二進制值中不需要的尾隨零。

例如, - 創建與二進制字段

create table blob 
(id int, 
adata binary(256)) 

-- inserting binary value 0x730000000000000000000000000000000000000000000000000000000000 into the table 


insert into blob values(3,0x730000000000000000000000000000000000000000000000000000000000) 

-- and then when i select it, 


select * from blob 

3 **0x73000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000** 

所查詢的值以粗體突出顯示錶團塊。

我不需要此列有這些不需要的尾隨零。

任何人都可以請幫助我從表中的二進制字段中刪除這些零?

注:我們不應該改變表結構。

在此先感謝。

拉哈夫錢德拉謝蒂

回答

2

我知道你說你不能改變表結構,但如果你不希望尾隨零,你真的應該使用varbinary場來代替。只有binary列,這些零是且將始終是表中數據的一部分,並且0x7300和0x7300000000之間沒有區別。