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

نام تاپیک: مشکل در ثبت مسیر عکس در دیتابیس

  1. #1

    مشکل در ثبت مسیر عکس در دیتابیس

    سلام دوستان
    من یک مشکل دارم اونم ثبت عکس در دیتابیس هست
    میخوام عکسم رو تو دیتابیس ذخیره کنم و کدی که زدم اینه :

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim con As New SqlConnection()
    con.ConnectionString = "server=HAMED-PC;database=Hospital;Integrated security=yes"
    con.Open()
    Dim com As New SqlCommand()
    com.Connection = con
    Dim sql As String

    Dim rnd As New Random
    Dim temp As String
    temp = rnd.Next(1, 100).ToString()
    File.Copy(ImgPath, My.Application.Info.DirectoryPath & "\" & temp & ".JPG")

    Dim stream As New FileStream(My.Application.Info.DirectoryPath & "\" & temp & ".JPG", FileMode.Open)

    Dim reader As New BinaryReader(stream)
    Dim imgByte() As Byte
    imgByte = reader.ReadBytes(stream.Length)

    Dim s As String
    If (RadioButton1.Checked = True) Then
    s = 0
    ElseIf (RadioButton2.Checked = True) Then
    s = 1
    End If
    If s = 0 Then
    s = "Male"
    Else
    s = "Female"
    End If

    sql = "INSERT INTO Login(UserName,Password,Sex,picture) VALUES ('{0}','{1}','{2}',@picture)"
    sql = String.Format(sql, TextBox1.Text, TextBox2.Text, s)
    com.Parameters.Add("@picture", SqlDbType.VarBinary).Value = imgByte

    com.CommandText = sql
    com.ExecuteNonQuery()
    MsgBox("SAVED")
    com.CommandText = "select * From Login"
    Dim da As New SqlDataAdapter(com)
    Dim dt As New DataTable
    da.Fill(dt)
    DataGridView1.DataSource = dt
    con.Close()

    Dim Cnn As New SqlClient.SqlConnection
    Dim Comm As New SqlClient.SqlCommand
    Cnn.ConnectionString = "Server=Hamed-PC;Database=Hospital;Trusted_Connection=True;"
    Cnn.Open()
    Comm.Connection = Cnn
    Comm.CommandType = CommandType.Text
    MsgBox(ImgPath)

    Dim strSQL As String
    strSQL = "INSERT INTO Login(picture) VALUES ('{0}')"
    strSQL = String.Format(strSQL, ImgByte)
    End Sub


    اما وقتی میرم تو دیتابیس میبینم اینطوری ذخیره شده (حروف چینی) :
    Snapshot_2013-02-01_221551.jpg

    حالا میخوام به یک Picturebox مسیر عکس رو بدم که نمایش بده ولی نمیشه و چیزی نمایش داده نمیشه
    باید چکار کنم ؟ ممنون

  2. #2
    کاربر دائمی آواتار systam
    تاریخ عضویت
    خرداد 1390
    محل زندگی
    مشهد (امام رضا (ع))
    پست
    973

    نقل قول: مشکل در ثبت مسیر عکس در دیتابیس

    سلام اینطوری نمیشه برنامه رو ضمیمه کن

  3. #3

    نقل قول: مشکل در ثبت مسیر عکس در دیتابیس

    نقل قول نوشته شده توسط Ship Storm مشاهده تاپیک
    حالا میخوام به یک Picturebox مسیر عکس رو بدم که نمایش بده ولی نمیشه و چیزی نمایش داده نمیشه
    باید چکار کنم ؟ ممنون
    [/RIGHT]
    [/LEFT]
    سلام

    دوست عزیز در کد بالا شما خود عکس رو به بایت تبدیل کرده و در بانک ذخیره میکند و نه مسیر عکس.

    در این حال شما موقع نمایش عکس باید دوباره بایت رو به Image تبدیل کنید.

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

    نقل قول: مشکل در ثبت مسیر عکس در دیتابیس

    سلام
    اول چک کنید که نوع ستون Picture از نوع ( VarBinary(Max باشه
    کدتون رو هم میشه کوتاه تر و بهینه تر کرد:
    تو امضای من هم می تونید دو تا نمونه واسه ذخیره فایل تو دیتابیس(مخصوصا فایل های بزرگتر از یه تصویر) پیدا کنید

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Try
    Dim con As New SqlConnection()
    con.ConnectionString = "server=HAMED-PC;database=Hospital;Integrated security=yes"
    Dim com As New SqlCommand()
    com.Connection = con
    Dim sql As String

    Dim imgByte = IO.File.ReadAllBytes(ImgPath)

    Dim s As String = If(RadioButton1.Checked, "Male", "Female")

    sql = "INSERT INTO Login(UserName,Password,Sex,picture) VALUES (N'{0}',N'{1}','{2}',@picture)"
    sql = String.Format(sql, TextBox1.Text, TextBox2.Text, s)
    com.Parameters.AddWithValue("@picture", imgByte)

    com.CommandText = sql
    con.Open()
    com.ExecuteNonQuery()
    MsgBox("SAVED")
    com.CommandText = "select * From Login"
    Dim da As New SqlDataAdapter(com)
    Dim dt As New DataTable
    da.Fill(dt)
    con.Close()
    DataGridView1.DataSource = dt


    Catch ex As Exception
    MsgBox("Error:" & vbNewLine & ex.Message, MsgBoxStyle.Exclamation)
    End Try
    End Sub

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

  1. مشکل در ذخیره کردن عکس در دیتابیس
    نوشته شده توسط mahtab s در بخش ASP.NET Web Forms
    پاسخ: 6
    آخرین پست: یک شنبه 31 مرداد 1389, 12:45 عصر
  2. مشکل در لود چند عکس از دیتابیس
    نوشته شده توسط silverman_200 در بخش C#‎‎
    پاسخ: 2
    آخرین پست: چهارشنبه 18 آذر 1388, 08:04 صبح
  3. مشکل در ثبت مسیر عکس در DB
    نوشته شده توسط msafvati در بخش PHP
    پاسخ: 0
    آخرین پست: جمعه 02 فروردین 1387, 12:21 عصر
  4. مشکل در قرار دادن عکس در دیتابیس
    نوشته شده توسط allooo در بخش برنامه نویسی در 6 VB
    پاسخ: 1
    آخرین پست: یک شنبه 19 شهریور 1385, 08:39 صبح
  5. مشکل با ثبت کردن کاراکتر " ` " در دیتابیس
    نوشته شده توسط tabib_m در بخش PHP
    پاسخ: 9
    آخرین پست: جمعه 16 تیر 1385, 20:47 عصر

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

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