23 Mart 2013 Cumartesi

Veritabanı - 4... Resim Kullanımı...


Okul isimli veritabanını burada da kullanmaya devam ediyoruz... Tıklanan isme göre bize resimleri getirecek olan bir uygulama gerçekleştireceğiz... Bunun için resimleri veritabanın da olduğu bin klasörü ile aynı yerde ayarlıyoruz... 

Veritabanında ise resim adında bir alan ekliyoruz ve bu alanı metin olarak tanımlıyoruz... Burada yaptığımız işlem resmin yolunu veritabanına kaydetmek ve oradan tekrar çağırmak... İlaç programında olan örnekte ise bilgisayardan resim de ekleyip istediğimiz konuma getirebiliyoruz... Ama yine bu mantıkla yapıyoruz... 


Form dizaynını aşağıdaki gibi yapıyorsunuz... Bir adet combobox ve bir adet picturebox ekliyorsunuz... 


Programın çalışır halindeki görüntüsü aşağıdaki gibidir... 


Seçim yapıldığı anda ekrana resim gelecektir... 


Programın kodları aşağıdaki şekildedir... 

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 System.Data.OleDb;

namespace arama_4
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; Data Source=okul.mdb");
        OleDbCommand komut = new OleDbCommand();

        private void Form1_Load(object sender, EventArgs e)
        {
            // Combobox'ın içine veritabanında ki isimleri getirtiyoruz... 
            baglanti.Open();
            komut.CommandText = "Select Isim From ogrenci";

            komut.Connection = baglanti;
            OleDbDataReader oku = komut.ExecuteReader();

            while (oku.Read())
                comboBox1.Items.Add(oku[0]);

            oku.Close();
            baglanti.Close();
        }

        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            // Seçilen isme göre picturebox da resmi getiriyoruz... 
            baglanti.Open();
            komut.CommandText = "SELECT * FROM ogrenci WHERE  (Isim ='" + comboBox1.Text + "')";
            komut.Connection = baglanti;

            OleDbDataReader resim = komut.ExecuteReader();
            while (resim.Read())
                pictureBox1.Image = Image.FromFile(resim[4].ToString());

            resim.Close();
            baglanti.Close();
        }    
    }
}