"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية تحميل وعرض الصور من قاعدة بيانات MySQL في C#؟

كيفية تحميل وعرض الصور من قاعدة بيانات MySQL في C#؟

تم النشر بتاريخ 2024-11-08
تصفح:801

How to Load and Display Images from a MySQL Database in C#?

كيفية استرداد وعرض الصور من قاعدة بيانات MySQL

يتطلب استرداد الصور من قاعدة بيانات MySQL إلى عنصر تحكم PictureBox أسلوبًا محددًا مع البايت المناسب التعامل مع المصفوفة. توضح الخطوات التالية العملية:

إدراج صورة في قاعدة بيانات MySQL

    استخدم مكتبة MySql.Data.MySqlClient للاتصال بقاعدة بيانات MySQL.
  1. تحويل الصورة من ملف إلى مصفوفة بايت: byte[] bytes = File.ReadAllBytes(ofd.FileName);
  2. أنشئ MySqlCommand وأدخل مصفوفة البايت في قاعدة البيانات باستخدام معلمة:

    cmd.Parameters.AddWithValue("@image", bytes); cmd.ExecuteNonQuery();
    cmd.Parameters.AddWithValue("@image", bytes);
    cmd.ExecuteNonQuery();
استرداد الصورة من قاعدة بيانات MySQL

يتم استخدام مصفوفة بايت [] لتخزين الصورة المستردة : byte[] ImageByte = new byte[0];
  1. تنفيذ استعلام باستخدام معلمة لاسترداد الصورة:
  2. cmd.Parameters.AddWithValue("@id"، Properties .Settings.Default.idImg); صف MySqlDataReader؛ صف = cmd.ExecuteReader();

    cmd.Parameters.AddWithValue("@id", Properties.Settings.Default.idImg);
    MySqlDataReader row;
    row = cmd.ExecuteReader();
  3. اقرأ مصفوفة بايت الصورة من الصف:
  4. while (row.Read()) { ImageByte = (Byte[])(row["image"]);

    cmd.Parameters.AddWithValue("@image", bytes);
    cmd.ExecuteNonQuery();
تحويل مصفوفة البايت إلى صورة وعرض

تحويل مصفوفة البايت إلى صورة باستخدام Helper.ByteArrayToImage الطريقة:
  1. roundPictureBox1.Image = byteArrayToImage(ImageByte); roundPictureBox1.Refresh();

    cmd.Parameters.AddWithValue("@id", Properties.Settings.Default.idImg);
    MySqlDataReader row;
    row = cmd.ExecuteReader();
    التحسينات

فكر في استخدام تقنيات تحسين الصور للتأكد من أن الصور لا تؤدي إلى زيادة أحجام الملفات.

قم بتخزين اسم الملف الأصلي في قاعدة البيانات لتسهيل استرجاعه وإدارته خارج قاعدة البيانات.
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3