问题
i am working with digital persona u are u 4500 and oracle database, i got the problem to store fingerprint template to database, here part of my code
string sqlInsert = "insert into mytable(ID,FINGERPRINT)";
sqlInsert += "values (:i_ID,:i_FINGERPRINT)";
OracleParameter iID = new OracleParameter();
iID.OracleDbType = OracleDbType.Varchar2;
iID.Value = textBox1.Text;
iID.ParameterName = "i_ID";
OracleParameter iFINGERPRINT = new OracleParameter();
iFINGERPRINT.OracleDbType = OracleDbType.Blob;
iFINGERPRINT.Direction = ParameterDirection.Input;
iFINGERPRINT.Value = Data.Templates[5];
iFINGERPRINT.ParameterName = "i_FINGERPRINT";
cmdInsert.Parameters.Add(iID);
cmdInsert.Parameters.Add(iFINGERPRINT);
cmdInsert.ExecuteNonQuery();
note : Data.Templates[5] is a fingerprint template format
i got error "invalid parameter binding" what does it mean? could somebody help me? what should i do? thanks in advance
回答1:
string path="C:\\Fingerprintimage.bmp";
FileStream fls;
fls = new FileStream(path, FileMode.Open, FileAccess.Read);
byte[] blob = new byte[fls.Length];
fls.Read(blob, 0, System.Convert.ToInt32(fls.Length));
fls.Close();
string q="";
q = "insert into mytable(ID,FINGERPRINT) values(" + 1 + ", :BlobParameter)";
OracleParameter blobParameter = new OracleParameter();
blobParameter.OracleDbType = OracleDbType.Blob;
blobParameter.ParameterName = "BlobParameter";
blobParameter.Value = blob;
cmd = new OracleCommand(q, conn);
cmd.Parameters.Add(blobParameter);
cmd.ExecuteNonQuery();
来源:https://stackoverflow.com/questions/14789426/how-to-move-fingerprint-template-to-oracle-database