Insert dan View Image di database dengan C# dan MYSQL

Selamat sore sahabat internet, pada sore hari ini saya akan mencoba menulis tutorial mengenai bagaimana cara memasukan dan menampilkan gambar di database melalui C#. pertama – tama silakan buatlah databasenya menggunakan Xampp dengan nama dbcsharp. Kemudian buatlah tabelnya dengan nama identitas.

untuk struktur tabelnya lihat gambar dibawah.


– kemudian silahkan buat design seperti gambar berikut.



– Silahkan Masukan Listing berikut :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
using System.IO;
namespace simpantampilgambar_Csharp_dan_mysql
{
public partial class Form1 : Form
{
public string database = “server = localhost; database = dbcsharp; uid=root;pwd=”;”;
public MySqlConnection conn;
public MySqlCommand cmd;
public MySqlDataAdapter adp;
public MySqlDataReader rdr;
public Form1()
{
InitializeComponent();
}
void open()
{
OpenFileDialog open = new OpenFileDialog();
open.Filter = “PNG Format|*.PNG”;
if (open.ShowDialog() != DialogResult.Cancel)
{
string file = open.FileName;
if (file != “”)
{
pictureBox1.ImageLocation = file;
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
}
}
}
void tampil()
{
try
{
string sql = “select * from identitas”;
conn = new MySqlConnection(database);
conn.Open();
cmd = new MySqlCommand(sql, conn);
adp = new MySqlDataAdapter(cmd);
DataTable dt = new DataTable();
adp.Fill(dt);
bindingSource1.DataSource = dt;
dataGridView1.DataSource = bindingSource1;
bindingNavigator1.BindingSource = bindingSource1;
}
catch (Exception ali)
{
MessageBox.Show(ali.Message);
}
}
void control()
{
try
{
textBox1.Text = dataGridView1.CurrentRow.Cells[“nama”].Value.ToString();
textBox2.Text = dataGridView1.CurrentRow.Cells[“alamat”].Value.ToString();
string sql2 = “select * from identitas WHERE alamat=@idn”;
conn = new MySqlConnection(database);
conn.Open();
cmd = new MySqlCommand(sql2, conn);
cmd.Parameters.AddWithValue(“@idn”, textBox2.Text);
rdr = cmd.ExecuteReader();
if( rdr.Read()){
byte[] gambar = ((byte[])rdr.GetValue(2));
MemoryStream memo = new MemoryStream(gambar);
pictureBox1.Image = Image.FromStream(memo);
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
pictureBox1.BorderStyle = BorderStyle.Fixed3D;
}
}
catch (Exception ali)
{
MessageBox.Show(ali.ToString());
}
}
private void button1_Click(object sender, EventArgs e)
{
open();
}
private void button2_Click(object sender, EventArgs e)
{
try
{
conn = new MySqlConnection(database);
conn.Open();
string insert = “Insert into identitas (nama,alamat,identitas) VALUES (@1, @2, @3)”;
cmd = new MySqlCommand(insert, conn);
var a = textBox1.Text;
var b = textBox2.Text;
MemoryStream ms = new MemoryStream();
pictureBox1.Image.Save(ms, pictureBox1.Image.RawFormat);
byte[] images = ms.GetBuffer();
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue(“@1″, a);
cmd.Parameters.AddWithValue(“@2″, b);
cmd.Parameters.Add(new MySqlParameter(“@3″, MySqlDbType.LongBlob)).Value = images;
cmd.ExecuteNonQuery();
MessageBox.Show(“Data Berhasil Disimpan”);
tampil();
}
catch (Exception ali)
{
MessageBox.Show(ali.Message);
}
}
private void button3_Click(object sender, EventArgs e)
{
tampil();
}
private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
control();
}
private void bindingNavigatorDeleteItem_Click(object sender, EventArgs e)
{
string sql2 = “Delete from identitas Where alamat=’”+textBox2.Text+”‘”;
conn = new MySqlConnection(database);
conn.Open();
cmd = new MySqlCommand(sql2, conn);
cmd.ExecuteNonQuery();
MessageBox.Show(“Delete Success”);
}
}
}

– Silahkan Jalankan programm

– Pada Program, jika grid view terseleksi maka data akan di tampilkan di textboxt dan picturebox.
– Oh iya bila anda ingin merubah judul header di gridviewnya anda dapat melakukan ini.
Contoh:
dataGridview1.Columns[0].HeaderText = “Nama-Nama”

Tidak ada komentar:

Posting Komentar

Profile Page Screen - Flutter UI

Profile Page Berikut ini adalah contoh  source code untuk Design Profile Page menggunakan flutter,  sebelumnya jangan lupa untuk membua...