i have to store a finger print template in database and retrieve it. do i have to set the column name as image or var binary(max)? i tried the some code from some sites, but didn't work.
i retrieved a blank file from database. am doing the project in c#.net using sql server 2005. the ftp file is 1.59kb in size
thanks in advance
//to add new user
public void AddUser(string name,byte[] pf,int length)
{
//code to insert file in database
cn = new SqlConnection(connstring);
cmd = new SqlCommand("adduser", cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@name", name);
//to save converted image to variable
SqlParameter UploadedImage = new SqlParameter("@fp", SqlDbType.Binary, length);
UploadedImage.Value = pf;
cmd.Parameters.Add(UploadedImage);
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
}
//retrieve fingerprint from database
public void FingerPrintRtvl(string uid)
{
cn = new SqlConnection(connstring);
adp = new SqlDataAdapter("fingerprintrtvl", cn);
adp.SelectCommand.CommandType = CommandType.StoredProcedure;
adp.SelectCommand.Parameters.AddWithValue("@uid", Convert.ToInt32(uid));
DataSet ds = new DataSet("MyImages");
cn.Open();
adp.Fill(ds, "MyImages");
cn.Close();
byte[] MyData = new byte[57];
DataRow myRow;
myRow = ds.Tables["MyImages"].Rows[0];
MyData = (byte[])myRow["fp"];
int ArraySize = new int();
ArraySize = MyData.GetUpperBound(0);
string temp = System.IO.Path.GetTempPath();
string fpFile = "D:\\" + "fingerprint.fpt";
FileStream fs = new FileStream(fpFile, FileMode.OpenOrCreate, FileAccess.Write);
fs.Write(MyData, 0, ArraySize);
fs.Close();
}