【发布时间】:2014-07-29 00:22:19
【问题描述】:
我正在开发一个应用程序,我想在其中将用户的指纹存储到数据库中,然后将其与从设备中获取的指纹进行比较。
在将varbinary(max) 列转换回字节[] 时,我遇到了某些问题。我曾尝试使用GetSqlBinary 函数,但它给了我indexoutofrangeException。
我使用下面的代码将模板存储到数据库中,但发现所有用户的值都相同。 (例如 0x000000)
public int insernewVoter(NSubject thumb)
{
connectionOpen();
byteArray = thumb.GetTemplateBuffer().ToArray();
int insert = 0;
cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "INSERT INTO VOTER (THUMB) VALUES(CONVERT(varbinary(max),'" + byteArray + "'))";
int rowsupdated = cmd.ExecuteNonQuery();
if (rowsupdated <= 0) {
MessageBox.Show("Ho Gya");
}
else {
MessageBox.Show("AP MAR KYN NAI JATA :D");
}
return 0;
connectionClose();
}
谁能告诉我如何将 byte[] 插入 varbinary(max) 列然后检索它?
【问题讨论】:
-
是的,但它为所有用户插入相同的值:?
标签: c# arrays sql-server varbinarymax