نمایش نتایج 1 تا 4 از 4

نام تاپیک: ذخیره و بازیابی تصویر در دیتابیس اکسس vb.net 2012

  1. #1

    ذخیره و بازیابی تصویر در دیتابیس اکسس vb.net 2012

    سلام
    چه طور باید تصویر رو در اکسس ذخیره و بازیابی کرد؟

  2. #2

    نقل قول: ذخیره و بازیابی تصویر در دیتابیس اکسس vb.net 2012

    نقل قول نوشته شده توسط goldpower مشاهده تاپیک
    سلام
    چه طور باید تصویر رو در اکسس ذخیره و بازیابی کرد؟
    راه حل :

    Imports System.Data.OleDb
    Imports System.IO

    Public Class Form1

    Dim ConnString As String = "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" & Application.StartupPath & "\ImageDatabase.mdb"
    Dim CONNECTION As New OleDbConnection(ConnString)
    Dim DS As DataSet

    '
    'Load
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Call ReloadImages()
    End Sub
    '
    'Browse
    Private Sub btnBrowse_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBrowse.Click
    With OpenFileDialog1
    .InitialDirectory = "C:\"
    .Filter = "Bitmaps (*.bmp)|*.bmp|GIFs (*.gif)|*.gif|JPEGs (*.jpg)|*.jpg|All Image File (*.jpg,*.bmp,*.gif)|*.jpg;*.bmp;*.gif"
    .FilterIndex = 2
    End With

    If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
    With PictureBox1
    .Image = Image.FromFile(Me.OpenFileDialog1.FileName)
    .SizeMode = PictureBoxSizeMode.AutoSize
    End With

    End If
    Me.Label1.Text = Me.OpenFileDialog1.FileName.ToString
    End Sub
    '
    'Save
    Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click

    If Me.Label1.Text.Trim = "" Then
    MsgBox("Please browse a picture to save!", MsgBoxStyle.Information, "No Picture to Save")
    Exit Sub
    End If

    Dim ms As New MemoryStream
    Me.PictureBox1.Image.Save(ms, Me.PictureBox1.Image.RawFormat)

    Dim arrayImage() As Byte = ms.GetBuffer
    ms.Close() ' Closes the Memory Stream

    Dim nStr As String = Me.Label1.Text.Substring(Me.Label1.Text.LastIndexO f("\") + 1)

    Dim strQuery As String = "INSERT INTO Pic(Name, Picture) VALUES(@Name, @Picture)"

    Dim objcommand As New OleDbCommand(strQuery, CONNECTION)
    With objcommand
    .Parameters.Add(New OleDbParameter("@Name", SqlDbType.NVarChar, 50)).Value = nStr
    .Parameters.Add(New OleDbParameter("@Picture", SqlDbType.Image)).Value = arrayImage
    End With

    CONNECTION.Open()
    objcommand.ExecuteNonQuery()
    MessageBox.Show("Image Saved Into the DataBase", "Save Successfully", MessageBoxButtons.OK, MessageBoxIcon.Information)
    CONNECTION.Close()

    ReloadImages()

    'Find and Select the Image Last Save.
    Dim index As Integer = Me.ListBox1.FindStringExact(nStr)
    Me.ListBox1.TopIndex = index
    ListBox1.SelectedIndex = index

    End Sub
    '
    'Delete
    Private Sub btndelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btndelete.Click
    Dim intID As Integer

    If Me.ListBox1.SelectedIndex > -1 Then
    intID = Me.DS.Tables(0).Rows(Me.ListBox1.SelectedIndex).It em("ID")
    Else
    'nothing to delete
    Exit Sub
    End If

    Dim strQuery As String = "DELETE FROM Pic WHERE ID=@ID"

    Dim objcommand As New OleDbCommand(strQuery, CONNECTION)
    With objcommand
    .Parameters.Add(New OleDbParameter("@ID", SqlDbType.Int)).Value = intID
    End With

    CONNECTION.Open()
    objcommand.ExecuteNonQuery()
    MessageBox.Show("Delete Image From the DataBase", "Delete Successfully", MessageBoxButtons.OK, MessageBoxIcon.Information)
    CONNECTION.Close()

    ReloadImages()
    End Sub
    '
    'Export Picture
    Private Sub ExportPictureToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ExportPictureToolStripMenuItem.Click
    If Me.ListBox1.SelectedIndex > -1 Then

    Dim strPic As String = DS.Tables(0).Rows(Me.ListBox1.SelectedIndex).Item( "Name")
    Dim strExt As String = strPic.Substring(strPic.LastIndexOf(".") + 1)
    Dim strFileName As String = strPic.Remove(strPic.LastIndexOf("."))
    Dim Index As String

    Select Case strExt
    Case "bmp"
    Index = 1
    Case "gif"
    Index = 2
    Case "jpg"
    Index = 3
    Case Else
    Index = 0
    End Select

    With SaveFileDialog1
    .Filter = "Bitmaps (*.bmp)|*.bmp|GIFs (*.gif)|*.gif|JPEGs (*.jpg)|*.jpg"
    .FilterIndex = Index
    End With
    Me.SaveFileDialog1.FileName = strFileName
    If Me.SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
    Me.PictureBox1.Image.Save(Me.SaveFileDialog1.FileN ame)
    End If
    End If

    End Sub
    '
    '
    Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click
    If Me.Label1.Text.Trim <> "" Then
    If IO.File.Exists(Me.Label1.Text) = True Then
    Me.PictureBox1.Image = Image.FromFile(Me.Label1.Text)
    Else
    MsgBox("The picture file does not exist!", MsgBoxStyle.Exclamation, "File does not exist")
    End If
    End If

    End Sub
    '
    '
    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged

    If Me.ListBox1.SelectedIndex > -1 Then
    Dim arrayImage() As Byte = CType(Me.DS.Tables(0).Rows(Me.ListBox1.SelectedInd ex).Item("Picture"), Byte())
    Dim ms As New MemoryStream(arrayImage)
    With Me.PictureBox1
    .Image = Image.FromStream(ms)
    .SizeMode = PictureBoxSizeMode.AutoSize

    End With
    End If

    End Sub
    '
    '
    Private Sub rdoNormal_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Me.PictureBox1.SizeMode = PictureBoxSizeMode.AutoSize
    End Sub

    #Region "Helper"

    Private Sub ReloadImages()
    Try
    Dim cmd As New OleDbCommand("SELECT * FROM Pic ORDER BY Name", CONNECTION)
    Dim DA As New OleDbDataAdapter(cmd)
    DS = New DataSet

    DA.Fill(DS)

    Me.ListBox1.DataSource = DS.Tables(0)
    Me.ListBox1.DisplayMember = "Name"
    Me.ListBox1.ValueMember = "ID"
    Catch ex As Exception
    MsgBox(ex.Message)
    End Try

    End Sub

    #End Region

    End Class


  3. #3

    نقل قول: ذخیره و بازیابی تصویر در دیتابیس اکسس vb.net 2012

    با درود
    عالی بود حرف نداشت من خیلی جاها رو گشتم اما این از همه بهتر کار میکنه

  4. #4
    کاربر دائمی آواتار فرید نجفلو
    تاریخ عضویت
    بهمن 1390
    محل زندگی
    تبریز
    پست
    1,189

    نقل قول: ذخیره و بازیابی تصویر در دیتابیس اکسس vb.net 2012


تاپیک های مشابه

  1. سوال: ذخیره و بازیابی تصویر در دیتابیس اکسس
    نوشته شده توسط h_jafarnezhad در بخش C#‎‎
    پاسخ: 4
    آخرین پست: یک شنبه 19 مرداد 1393, 11:56 صبح
  2. ذخیره تصویر در دیتابیس اکسس
    نوشته شده توسط R_khaleghi در بخش C#‎‎
    پاسخ: 10
    آخرین پست: یک شنبه 12 خرداد 1392, 00:07 صبح
  3. نحوه ذخیره و بازیابی تصاویر در دیتابیس
    نوشته شده توسط Xcalivorse در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 20
    آخرین پست: شنبه 01 مرداد 1390, 16:01 عصر
  4. ذخیره صدا و عکس در دیتابیس اکسس و فراخوانی اونا
    نوشته شده توسط Hadiir.net در بخش مطالب مرتبط با بانکهای اطلاعاتی در VB6
    پاسخ: 3
    آخرین پست: پنج شنبه 21 خرداد 1388, 10:19 صبح
  5. نحوه ذخیره و بازیابی تصویر در بانک اطلاعاتی
    نوشته شده توسط hassan_kahrizy در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 41
    آخرین پست: یک شنبه 19 خرداد 1387, 23:51 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •