增加二进制字段长度

时间:2014-06-18 19:58:02

标签: sql-server

我有一个表格,其中包含二进制(24)类型的填充列。我想将此字段长度增加到二进制(32)。这部分很容易。我遇到的问题是当我尝试根据该字段的先前值查询表时。 (我们使用的是hashbytes函数)。

因此,在场长增加之前,我可以使用:

SELECT * FROM Table WHERE Field = HASHBYTES('md5', 'value')

字段长度增加后,此查询不返回任何内容。如何更改查询以返回适当的值?我可以在二进制文件的末尾添加什么才能识别它?

谢谢!

编辑:我显然做错了ELSE,因为这样做很好。

CREATE TABLE #test (test binary(24) null)
insert into #test (test) values (hashbytes('md5', 'test'))
select * from #test
ALTER TABLE #test ALTER COLUMN test binary(32) null
select * from #test where test = hashbytes('md5', 'test')

drop table #test

1 个答案:

答案 0 :(得分:1)

你能否在WHERE中使用CONVERT将其变回二进制(24)?

CONVERT binary