- 25 Mar 2019
- 71
- 19
Herkese hayırlı akşamlar arkadaşlar.
visual studio üzerinde bir çalışma yapıyorum ve bu yapmış olduğum çalışmayı da sql aracılığı ile gerçekleştiriyorum yapmış olduğum veri tabanını visual studioda projeme ekledim. Yapmış olduğum projede Perid kısmında sayılar ardaşık olarak gitmiyor 1,2,3,4,5' e kadar düzgün ama ondan sonra 6 gelmesi gerekirken 7 geliyor bu hatayı düzeltmek adına Perİd'leri sıfırlayarak yeniden güncellemeyi denedim kodum çalışıyor ama istemiş olduğum sonucu alamıyorum bu konuda yardımcı olabilir misiniz ?
Kod bloğumun tamamı burada yardımcı olabilir misiniz
visual studio üzerinde bir çalışma yapıyorum ve bu yapmış olduğum çalışmayı da sql aracılığı ile gerçekleştiriyorum yapmış olduğum veri tabanını visual studioda projeme ekledim. Yapmış olduğum projede Perid kısmında sayılar ardaşık olarak gitmiyor 1,2,3,4,5' e kadar düzgün ama ondan sonra 6 gelmesi gerekirken 7 geliyor bu hatayı düzeltmek adına Perİd'leri sıfırlayarak yeniden güncellemeyi denedim kodum çalışıyor ama istemiş olduğum sonucu alamıyorum bu konuda yardımcı olabilir misiniz ?
C#:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace Personel_Kayit_Ekrani
{
public partial class Form1 : Form
{
void SiraNumaralandirma()
{
string connectionString = "Data Source=MCAN\\SQLEXPRESS;Initial Catalog=PersonelVeriTabani;Integrated Security=True;";
using (SqlConnection connection = new SqlConnection(connectionString))
{
string queryUpdate = @"
WITH CTE AS
(
SELECT Perid, ROW_NUMBER() OVER(ORDER BY Perid) AS NewPerid
FROM Tbl_Personel
)
UPDATE Tbl_Personel
SET Perid = CTE.NewPerid
FROM Tbl_Personel
INNER JOIN CTE ON Tbl_Personel.Perid = CTE.Perid";
SqlCommand commandUpdate = new SqlCommand(queryUpdate, connection);
try
{
connection.Open();
// Perid değerlerini güncelle
int rowsAffected = commandUpdate.ExecuteNonQuery();
Console.WriteLine("Perid değerleri başarıyla güncellendi. Güncellenen satır sayısı: " + rowsAffected);
}
catch (Exception ex)
{
Console.WriteLine("Hata: " + ex.Message);
}
}
}
public Form1()
{
InitializeComponent();
}
void temizle()
{
Perid.Text = "";
PerAd.Text = "";
PerSoyad.Text = "";
PerSehir.Text = "";
PerMeslek.Text = "";
PerMaas.Text = "";
radioButton1.Checked = false;
radioButton2.Checked = false;
PerAd.Focus();
}
SqlConnection baglanti = new SqlConnection("Data Source=MCAN\\SQLEXPRESS;Initial Catalog=PersonelVeriTabani;Integrated Security=True;Encrypt=True;TrustServerCertificate=true");
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void Form1_Load(object sender, EventArgs e)
{
// TODO: Bu kod satırı 'personelVeriTabaniDataSet4.Tbl_Personel' tablosuna veri yükler. Bunu gerektiği şekilde taşıyabilir, veya kaldırabilirsiniz.
}
private void Listele_Click(object sender, EventArgs e)
{
this.tbl_PersonelTableAdapter3.Fill(this.personelVeriTabaniDataSet4.Tbl_Personel);
{
// Veritabanı bağlantısını aç
baglanti.Open();
// Veritabanından tüm kayıtları Perid sütununa göre küçükten büyüğe sıralayan SQL sorgusunu oluştur
SqlCommand komutListele = new SqlCommand("SELECT * FROM Tbl_Personel ORDER BY Perid ASC", baglanti);
// Sorguyu çalıştırıp veri okuyucuyu oluştur
SqlDataReader readerListele = komutListele.ExecuteReader();
// DataTable oluştur
DataTable dataTable = new DataTable();
dataTable.Load(readerListele);
// DataGridView'in veri kaynağını ayarla
dataGridView1.DataSource = dataTable;
// Veri okuyucuyu ve veritabanı bağlantısını kapat
readerListele.Close();
baglanti.Close();
SiraNumaralandirma();
}
}
private void Kaydet_Click(object sender, EventArgs e)
{
baglanti.Open();
SqlCommand komut = new SqlCommand("insert into Tbl_Personel(PerAd,PerSoyad,PerSehir,PerMaas,PerMeslek) values (@p1,@p2,@p3,@p4,@p5)", baglanti);
komut.Parameters.AddWithValue("@p1", PerAd.Text);
komut.Parameters.AddWithValue("@p2", PerSoyad.Text);
komut.Parameters.AddWithValue("@p3", PerSehir.Text);
komut.Parameters.AddWithValue("@p4", PerMaas.Text);
komut.Parameters.AddWithValue("@p5", PerMeslek.Text);
komut.ExecuteNonQuery();
baglanti.Close();
MessageBox.Show("Personel Eklendi");
}
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
if (radioButton1.Checked == true)
{
label9.Text = "True";
}
}
private void Temizle_Click(object sender, EventArgs e)
{
temizle();
}
private void dataGridView1_CellContentDoubleClick(object sender, DataGridViewCellEventArgs e)
{
int secilen = dataGridView1.SelectedCells[0].RowIndex;
Perid.Text = dataGridView1.Rows[secilen].Cells[0].Value.ToString();
PerAd.Text = dataGridView1.Rows[secilen].Cells[1].Value.ToString();
PerSoyad.Text = dataGridView1.Rows[secilen].Cells[2].Value.ToString();
PerSehir.Text = dataGridView1.Rows[secilen].Cells[3].Value.ToString();
PerMaas.Text = dataGridView1.Rows[secilen].Cells[4].Value.ToString();
label9.Text = dataGridView1.Rows[secilen].Cells[5].Value.ToString();
PerMeslek.Text = dataGridView1.Rows[secilen].Cells[6].Value.ToString();
}
private void label9_TextChanged(object sender, EventArgs e)
{
if (label9.Text == "True")
{
radioButton1.Checked = true;
}
if (label9.Text == "False")
{
radioButton2.Checked = true;
}
}
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
if (radioButton2.Checked == false)
{
label9.Text = "true";
}
}
private void Sil_Click(object sender, EventArgs e)
{
baglanti.Open();
SqlCommand komutsil = new SqlCommand("Delete From Tbl_Personel Where Perid=@k1", baglanti);
komutsil.Parameters.AddWithValue("@k1", Perid.Text);
komutsil.ExecuteNonQuery();
baglanti.Close();
MessageBox.Show("Kayıt silindi");
}
private void Güncelle_Click(object sender, EventArgs e)
{
baglanti.Open();
SqlCommand komutguncelle = new SqlCommand("Update Tbl_Personel Set PerAd=@a1,PerSoyad=@a2,PerSehir=@a3,PerDurum=@a4,PerMaas=@a5,PerMeslek=@a6 where Perid=@a7", baglanti);
komutguncelle.Parameters.AddWithValue("@a1", PerAd.Text);
komutguncelle.Parameters.AddWithValue("@a2", PerSoyad.Text);
komutguncelle.Parameters.AddWithValue("@a3", PerSehir.Text);
komutguncelle.Parameters.AddWithValue("@a4", label9.Text);
komutguncelle.Parameters.AddWithValue("@a5", PerMaas.Text);
komutguncelle.Parameters.AddWithValue("@a6", PerMeslek.Text);
komutguncelle.Parameters.AddWithValue("@a7", Perid.Text);
komutguncelle.ExecuteNonQuery();
MessageBox.Show("Personel bilgisi güncellendi");
baglanti.Close();
}
private void İstatistik_Click(object sender, EventArgs e)
{
Frmistatistik fr = new Frmistatistik();
fr.Show();
}
private void Bul_Click(object sender, EventArgs e)
{
// Veritabanı bağlantısını aç
baglanti.Open();
// Veritabanından PerAd sütununda arama yapan SQL sorgusunu oluştur
SqlCommand komutbul = new SqlCommand("SELECT * FROM Tbl_Personel WHERE PerAd LIKE '%" + textBox1.Text + "%' ORDER BY Perid ASC", baglanti);
// Sorguyu çalıştırıp veri okuyucuyu oluştur
SqlDataReader readerbul = komutbul.ExecuteReader();
// DataTable oluştur
DataTable dataTable = new DataTable();
dataTable.Load(readerbul);
// DataGridView'in veri kaynağını ayarla
dataGridView1.DataSource = dataTable;
// Veri okuyucuyu ve veritabanı bağlantısını kapat
readerbul.Close();
baglanti.Close();
}
private void button1_Click(object sender, EventArgs e)
{
SiraNumaralandirma();
}
}
}
Kod bloğumun tamamı burada yardımcı olabilir misiniz
Moderatör tarafında düzenlendi: