Çoğu hatta tüm otomasyon programının başına yetkililere ait kullanıcı giriş ekranı çıkar. Kullanıcıların kaydı veritabanında olduğu için program veritabanındaki verilere bağlanır ve doğru olup olmadığını kontrol eder. Eğer doğruysa sistem açılır, yanlışsa hata verir.Bu makalede OleDbDataConnection ile formumuza login paneli yapacağız. Bunun için gerekli olan ilk şey Microsoft Access. Sürümlerinin 2007 – 2010 – 2003 olması hiç farketmez. Bu sistem Access(.mdb) veritabanında ekli kullanıcıları ve parolaları alıp textbox daki değerlerle eşit olması durumunda bir sonraki formu görüntülemeyi sağlar.
Öncelikle tekrar merhabalar.
Bu makalede SQL Server dışında Access veritabanı ile verileri alıp kullanıcı girişi yaptırtacağız.
[alert-blue]Her şeyden önce hatırlatmakta fayda var, bu işlem hem SQL Server ile hem de Access ile yapılabilir. Değişen tek şey SqlConnection düğümü yerine OleDbDataConnection düğümü kullanılır.[/alert-blue]
Detaylar
-
- İlk önce Yeni bir proje açıyoruz.
- Kendimize göre en az 1 button 2 TextBox ve 2 label olmak şartıyla düzenliyoruz. ( 2 label extra olacak.) Benim dizaynım aşağıdaki fotoğraftaki gibi.
- Kod görünümüne geçip (Kısayol F7) üstteki using ile başlayan satırların sonuna;
using System.Data.OleDb;
yazıyoruz. Bu OleDb kütüphanesini projemize eklemiş olduk.
- Giriş yap Buttonuna çift tıklayıp açılan kod bölmesine yani click olayına yazıyoruz;
//OleDbConnection Kullanarak veritabanımızı bağlıyoruz. OleDbConnection baglan = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\veri.mdb"); //Bağlantıyı açıyoruz. baglan.Open(); //Komutumuzu veriyoruz. //KULLANICIADI oluşturulan veritabanındaki kullanıcı adı sütünu. //KULALNICIPAROLA veritabanındaki parola sütünu. //txtKullaniciadi Formdaki Kullanıcı adı yazılan textbox adı. //txtParola Formdaki parola yazılan textbox adı. OleDbCommand kaydetcmd = new OleDbCommand("SELECT * From kullanicilar WHERE KULLANICIADI = '" + txtKullaniciadi.Text + "' AND KULLANICIPAROLA ='" + txtParola.Text + "'", baglan); //WHERE ile başlayan üstteki satırı onun üstündekiyle birleştiriyoruz(uzun satır olduğundan sitenin düzeni bozuluyor) //Verimizi Okutuyoruz. OleDbDataReader oku = kaydetcmd.ExecuteReader(); if (oku.Read()) { // Eğer bağlantı başarı ile sağlanıp kullanıcı adı ve şifre doğru olması durumunda yapılacak işlemler. Form2 form = new Form2(); this.Hide(); form.Show(); } // Kullanıcı Adı kısmının boş bırakıldığı durumda yapılacaklar else if (txtKullaniciadi.Text == "") { MessageBox.Show("Kullanıcı Adı Alanı Boş Bırakılamaz", "hata", MessageBoxButtons.OK, MessageBoxIcon.Error); } // Parola kısmının boş bırakıldığı durumda yapılacaklar else if (txtParola.Text == "") { MessageBox.Show("Parola Alanı Boş Bırakılamaz", "Hata", MessageBoxButtons.OK, MessageBoxIcon.Error); } // Yanlış şifre girildiğinde else { MessageBox.Show("Kullanıcı Adı veya Parola Yanlış.", "Hata", MessageBoxButtons.OK, MessageBoxIcon.Error); }
İşlemimiz tamamdır.