我有一個C#Windows應用程序,它將僱員數據存儲到MYSQL數據庫中,包括他們的圖片。但試圖將圖像文件插入到MYSQL Blob字段時,圖片未保存。將圖像保存到MYSQL Blob字段
請幫忙。這是代碼。
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.InitialDirectory = "\\\\192.168.13.6\\ID Pictures";
openFileDialog1.Filter = "jpg files (*.jpg)|*.txt|All files (*.*)|*.*";
openFileDialog1.FilterIndex = 2;
openFileDialog1.RestoreDirectory = true;
int size = -1;
DialogResult result = openFileDialog1.ShowDialog();
if (result == DialogResult.OK) // Test result.
{
file = openFileDialog1.FileName;
try
{
pnl_Picture.BackgroundImage = Image.FromFile(file);
}
catch (IOException)
{
}
}
conn.Open();
FileStream fs;
BinaryReader br;
byte[] ImageData;
fs = new FileStream(file, FileMode.Open, FileAccess.Read);
br = new BinaryReader(fs);
ImageData = br.ReadBytes((int)fs.Length);
br.Close();
fs.Close();
OdbcCommand command = new OdbcCommand("INSERT INTO tbl_employee (Picture) VALUES ('"+?Image2+"')", conn);
OdbcParameterCollection parameters = command.Parameters;
parameters.Add("?Image2", OdbcType.Image);
parameters["?Image2"].Value = ImageData;
command.ExecuteNonQuery();
conn.Close();
不要那樣做。改爲保存圖像路徑。 – Rafael 2014-12-08 05:33:06
這就是我之前做的。文件的路徑是保存在數據庫中的路徑。但是在我的水晶報告中顯示圖像時遇到了麻煩。這就是爲什麼我決定保存圖像本身而不是路徑。 – JasonX 2014-12-08 05:37:07
只要您引用了正確的文件路徑並從數據庫獲取文件名,則在報告中顯示圖像應該不會成爲問題。 – Rafael 2014-12-08 05:38:39