PDA

View Full Version : ذخیره عکس در بانک sql server به چه شکله؟



mr.habiz
پنج شنبه 14 آذر 1387, 07:52 صبح
سلام.اگه ممکنه به من دستورات و نحوه ذخیره کردن عکس در بانک اطلاعاتی رو بدین و اینکه چطوری می تونم همین که روی دیتا گرید ویو حرکت می کنم عکس های ذخیره شده رو داخل Picture Box ببینم؟
مرسی.خیلی ضروریه.

fa_te64
پنج شنبه 14 آذر 1387, 10:29 صبح
سلام
براي ذخيره در پايگاه داده


if (openFileDialogi.FileName != "")
{
txtBro.Text = openFileDialogi.FileName;
filename = txtBro.Text;
pictureBox1.Image = Image.FromFile(openFileDialogi.FileName);
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
}
MemoryStream ms = new MemoryStream();
pictureBox1.Image.Save(ms, pictureBox1.Image.RawFormat);
arrImage1 = ms.GetBuffer();
ms.Close();

string strSQL = "";
SqlCommand cmd = new SqlCommand();
SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=" + FrmMain2.path + \\FactiiiDB.mdf;Integrated Security=True;User Instance=True (file://\\FactiiiDB.mdf;Integrated Security=True;User Instance=True));
strSQL = "INSERT INTO Template (picAdd) VALUES (@picAdd)";
cmd.CommandText = strSQL;
cmd.Connection = con;

cmd.Parameters.Add(new SqlParameter("@picAdd", SqlDbType.Binary)).Value = arrimage1;//picture
con.Open();
cmd.ExecuteNonQuery();
con.Close();

dark-man
پنج شنبه 14 آذر 1387, 10:33 صبح
openImageDialog.AddExtension = true;
openImageDialog.Filter = "Image files" + " (*.gif,*.jpg,*.jpeg,*.bmp,*.wmf,*.png) + |*.gif;*.jpg;*.jpeg;*.bmp;*.wmf;*.png|All + files (*.*)|*.*";
openImageDialog.FilterIndex = 1;
openImageDialog.Title = "انتخاب تصویر خودرو";
if (openImageDialog.ShowDialog() == DialogResult.OK)
{
Image carImage = Image.FromFile(openImageDialog.FileName);
carImageBox.Image = carImage;
string imageSrc = openImageDialog.FileName;
FileInfo src = new FileInfo(imageSrc);
_imagePath = src.FullName;
}









FileStream fsImageSave = new FileStream(_imagePath, FileMode.Open, FileAccess.Read);
Byte[] imageByte = new Byte[fsImageSave.Length];
fsImageSave.Read(imageByte, 0, imageByte.Length);
fsImageSave.Close();
SqlParameter prm = new SqlParameter("@image", SqlDbType.VarBinary, imageByte.Length, ParameterDirection.Input,
false, 0, 0, null, DataRowVersion.Current, imageByte);
carEnterRegCmd.Parameters.Add(prm);






سلام کدی که بالا برات نوشتم عکس رو توی یه دیتابیس ذخیره می کنه . برای فرخونی این عکس هم بر عکس این رو باید انجام بدی . اینجا Insert داریم . اما برای فراخوانی Select

alibarghamadi
جمعه 02 اردیبهشت 1390, 10:56 صبح
خیلی ممنون.
ولی اگه همونم می نوشتی بهتر بود

majid325
شنبه 03 اردیبهشت 1390, 18:18 عصر
خیلی ممنون.
ولی اگه همونم می نوشتی بهتر بود

کاربر عزیز به تاریخ تاپیک هم توجه کنید و از ارسال پستهای که بار فنی ندارند پرهیز کنید

abolfathi
پنج شنبه 22 اردیبهشت 1390, 20:36 عصر
حالا گناه که نکرده
اصلا چه ایرادی داره این تاپیکای تاریخ گذشته کامل تر بشن . شاید بعدا دوباره کسی به اینجا رسید و همین سوال رو داشت
من برای واکشی عکس از بانک و نمایش این کارو کردم :


SqlConnection SqlConnection1 = new SqlConnection("Data Source=.;Initial Catalog=test;Integrated Security=True");
SqlCommand SqlCommand1 = new SqlCommand("select picf from std where id=" + selectedID,SqlConnection1);
SqlConnection1.Open();
SqlDataReader1 = SqlCommand1.ExecuteReader();

if (SqlDataReader1.Read())
{
byte[] byteArray = (byte[])SqlDataReader1.GetValue(0);
System.IO.MemoryStream _MemoryStream = new System.IO.MemoryStream(byteArray);
pictureBox2.Image = System.Drawing.Image.FromStream(_MemoryStream);
}

SqlConnection1.Close();

Navid Asadi
شنبه 24 اردیبهشت 1390, 10:28 صبح
http://barnamenevis.org/showthread.php?286588-%D9%83%D8%A7%D8%B1-%D8%A8%D8%A7-%D8%B9%D9%83%D8%B3