Biraz araştırma yaptım ve bulduğum örnekler 'datagridview' ile yapılmaktaydı. Bense 'Listview' kullanarak programımı hazırlamıştım (Görsel açıdan daha hoş geldi). Biraz üstüne gidince basit bir program üzerinde c# öğrenmek isteyen arkadaşlarında işine yarayabileceğini düşündüğüm bir program yazdım. Programda tüm temel SQL komutları var (Ekleme, silme, arama).
Programı ve kaynak kodlarını indirmek için : TIKLAYIN
Program kodlarını aşağıda paylaştım fakat reklendirme işlemi olmadığı için okumanız biraz zor olacağından pdf olarak da hazırladım.
PDF'e ulaşmak için : TIKLAYIN
Programın bir görseli (Türkçe - İngilizce biraz karışık oldu ama kusura bakmayın.)
Şimdide program kodlarını paylaşayım.
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.Sql;
using System.Data.SqlClient;
namespace o1
{
public partial class Form1 : Form
{
//sql bağlantısı
SqlConnection baglanti = new SqlConnection("Data Source=(local); Initial Catalog=persons; Integrated Security=true");
//verileri göster
private void verilerigoster()
{
listView1.Items.Clear();
baglanti.Open();
SqlCommand kmt = new SqlCommand("SELECT * FROM phone_numbers ", baglanti);
SqlDataReader rdr = kmt.ExecuteReader();
while (rdr.Read())
{
ListViewItem li = new ListViewItem();
li.Text = rdr["id"].ToString();
li.SubItems.Add(rdr["name"].ToString());
li.SubItems.Add(rdr["surname"].ToString());
li.SubItems.Add(rdr["phone_number"].ToString());
li.SubItems.Add(rdr["adress"].ToString());
listView1.Items.Add(li);
}
baglanti.Close();
}
// #verileri göster
// veri ara
private void ara(String text)
{
listView1.Items.Clear();
baglanti.Open();
SqlCommand kmt = new SqlCommand("SELECT * FROM phone_numbers where name like '%" + text + "%' or surname like '%" + text + "%'", baglanti);
SqlDataReader rdr = kmt.ExecuteReader();
while (rdr.Read())
{
ListViewItem li = new ListViewItem();
li.Text = rdr["id"].ToString();
li.SubItems.Add(rdr["name"].ToString());
li.SubItems.Add(rdr["surname"].ToString());
li.SubItems.Add(rdr["phone_number"].ToString());
li.SubItems.Add(rdr["adress"].ToString());
listView1.Items.Add(li);
}
baglanti.Close();
}
// #veri ara
//veri ekle
private void veriekle()
{
try
{
SqlConnection baglanti = new SqlConnection();
baglanti.ConnectionString = "Data Source=(local); Initial Catalog=persons; Integrated Security=true";
baglanti.Open();
string komut = "INSERT INTO phone_numbers(name,surname,phone_number,adress) values('" + textBox3.Text.ToString() + "','" + textBox2.Text.ToString() + "','" + textBox4.Text.ToString() + "','" + textBox5.Text.ToString() + "')";
SqlCommand komutSatiri = new SqlCommand(komut, baglanti);
komutSatiri.ExecuteNonQuery();
baglanti.Close();
}
catch(SqlException ex)
{
MessageBox.Show(ex.ToString());
}
}
// #veri ekle
// Veri sil
private void verisil()
{
String c = listView1.FocusedItem.SubItems[0].Text.ToString();
try
{
SqlConnection baglanti = new SqlConnection();
baglanti.ConnectionString = "Data Source=(local); Initial Catalog=persons; Integrated Security=true";
baglanti.Open();
string komut = "DELETE FROM phone_numbers where id = '" + c + "'";
SqlCommand komutSatiri = new SqlCommand(komut, baglanti);
komutSatiri.ExecuteNonQuery();
baglanti.Close();
verilerigoster();
}
catch (SqlException ex)
{
MessageBox.Show(ex.ToString());
}
}
// #Veri sil
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
verilerigoster();
String verisayisi = listView1.Items.Count.ToString();
label5.Text = "Save Count : " + verisayisi;
}
private void button2_Click(object sender, EventArgs e)
{
if (textBox3.Text != "" && textBox2.Text != "" && textBox4.Text != "" && textBox5.Text != "")
{
veriekle();
verilerigoster();
}
else
{
MessageBox.Show("Hata : Tüm alanları doldurun!");
}
}
private void button3_Click(object sender, EventArgs e)
{
verisil();
}
private void button1_Click(object sender, EventArgs e)
{
String text = textBox1.Text.ToString();
ara(text);
}
private void button4_Click(object sender, EventArgs e)
{
verilerigoster();
textBox1.Text = "";
}
}
}