PDA

View Full Version : خیلی فوری:Image



maryam82
شنبه 29 تیر 1387, 20:24 عصر
با سلام و خسته نباشید
من می خوام با استفاده از vb.net یک عکس بفرستم به database sql server و ذخیره کنم. چطور می تونم این کار رو انجام بدم و نوع فیلد من توی Sql چی باید باشه؟
با تشکر

samispeed
شنبه 29 تیر 1387, 20:35 عصر
بهترین راه حل این است که اسم عکس را در داخل دیتابیس ذخیره کنید نوع فیلد را هم nvarchar در نظر بگیرید و بعد عکس را در یک پوشه که می توانید هر قسمت از برنامه قرار بدهید توسط برنامه ذخیره کنید موقع نمایش آن هم اسم فایل را می خوانید و ان را نمایش می دهید

maryam82
شنبه 29 تیر 1387, 21:01 عصر
میشه بیشتر توضیح بدید؟

samispeed
یک شنبه 30 تیر 1387, 08:17 صبح
عکس مورد نظر را با گذاشتن یک button , یک textbox انتخاب می کنید



Private Sub btnBrowes_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBrowes.Click
OpenFileDialog1.FileName = ""
OpenFileDialog1.Filter = "Images (*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF;"
Dim result As DialogResult
result = OpenFileDialog1.ShowDialog()
If result = Windows.Forms.DialogResult.OK Then
txtname.Text = OpenFileDialog1.FileName
End If
End Sub

txtname.text اسم textbox مورد نظر که اسم فایل در آن نمایش داده می شود

سپس یک دکمه ثبت هم کنارشان قرار بدهید که اطلاعات را داخل دیتابیس قرار بدهد


Private Sub btnAddpic_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAddpic.Click

If (txtname.Text <> "") Then
connectdb()
da = New SqlDataAdapter("Select top 1 * From tblpic", con.conn)
ds.Clear()
da.Fill(ds, "tblpic")
row = ds.Tables("tblpic").NewRow()
row("pic")=txtname.text
ds.Tables("tblpic").Rows.Add(row)
cb=new sqlcommandbuilder(da)
da.update (ds,"tblpic")




End If
End Sub



که در این قسمت tblpic اسم جدول و pic اسم فیلد که از نوع nvarchar تعریف می کنید
dim da as sqldataadapter
dim ds as new dataset
dim cb as sqlcommandbuilder
dim row as datarow
و همچنین connecttodb هم یک sub که برای اتصال به دیتابیس هست که خودتون نحوه اتصال آن را می دانید

samispeed
یک شنبه 30 تیر 1387, 08:25 صبح
این نکته را بگه که این برنامه آدرس کامل فایل را داخل دیتابیس ذخیره می کند و شما برای نمایش آن می توانید از دیتابیس آدرس را بخوانید و نمایش بدهید .

اگر هم خواستید که برنامه را در کامپیوتر های دیگر استفاده کنید بهتر که فقط اسم فایل را داخل دیتابیس ذخیره کنید و با استفاده از دستور file.copy عکس مورد نظر را داخل پوشه ای در برنامه ذخیره کنید مو قع نمایش هم از این مسیر نمایش دهید

parsavb
یک شنبه 30 تیر 1387, 09:25 صبح
نوع فیلد خودت رو image بذار و ببین این برنامه به دردت می خوره یا نه
http://barnamenevis.org/forum/attachment.php?attachmentid=18564&d=1212407960

maryam82
یک شنبه 30 تیر 1387, 10:40 صبح
خیلی خیلی ممنون
خدا خیرتون بده