Veritabanında olan tarihin istendiği şekilde gelmiyor

shotgspa

Decapat
Katılım
26 Aralık 2020
Mesajlar
14
Daha fazla  
Sistem Özellikleri
Intel I5 11400H, RTX 3050, 16 GB RAM, 512 GB SSD
Cinsiyet
Erkek
Meslek
Yazılım Mühendisliği
Merhabalar, benim bir okul projem var ve bu projede bir hesap sistemi bulunmakta. Hesap sisteminde hesap formunda kullanıcı hesabımı aç butonuna bastığı an olan zamanı veri tabanında DATETIME veri tipli sütunuma yazdırıyorum. Sonrasında bu veriyi çekmek istediğim zaman gün ve ayın yeri yanlış geliyor. Aşağıda parça parça kayıt ekleme kodlarımı ve kayıt çekme kodlarımı görebilirsiniz.

Komutlarım;
[CODE lang="csharp" title="Kodlar" highlight=""94, 103, 27""]// Kayıt Ekleme
private void btnKayit_Click(object sender, EventArgs e)
{
if (txtKullaniciAdi.Text == "")
{
MessageBox.Show("Bir kullanıcı adı giriniz. (Maksimum 50 karakter.)", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
else if (txtSifre.Text == "")
{
MessageBox.Show("Bir şifre giriniz. (Maksimum 50 karakter.)", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=EMIRHAN\SQLEXPRESS;Initial Catalog=CompanyDB;Persist Security Info=True;User ID=sa;Password=123456";
con.Open();

SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "INSERT INTO Hesaplar (ID, KullaniciAdi, Sifre, Yetki, AcilisTarihi, KurtarmaKodu, BeniHatirla) VALUES (@ID, @KullaniciAdi, @Sifre, @Yetki, @AcilisTarihi, @KurtarmaKodu, @BeniHatirla)";

cmd.Parameters.AddWithValue("@ID", lblHesapID.Text);
cmd.Parameters.AddWithValue("@KullaniciAdi", txtKullaniciAdi.Text);
cmd.Parameters.AddWithValue("@Sifre", txtSifre.Text);
cmd.Parameters.AddWithValue("@Yetki", lblYetki.Text);
cmd.Parameters.AddWithValue("@AcilisTarihi", DateTime.Now.ToString());
cmd.Parameters.AddWithValue("@KurtarmaKodu", lblKurtarmaKodu.Text);
cmd.Parameters.AddWithValue("@BeniHatirla", 0);

try
{
if (MessageBox.Show("ID: " + lblHesapID.Text + "\nKullanıcı Adı: " + txtKullaniciAdi.Text + "\nYetki: " + lblYetki.Text + "\nKurtarma Kodu: " + lblKurtarmaKodu.Text + "\n\nBu bilgilerle kayıt olmak istediğinize emin misiniz?\n\nNOT: Kurtarma kodunuzu saklamayı unutmayın!", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
MessageBox.Show("Başarıyla kayıt oldunuz.", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
cmd.ExecuteNonQuery();
this.Close();
frm_Giris = new Giris();
frm_Giris.txtKullaniciAdi.Enabled = true;
frm_Giris.txtKullaniciAdi.Clear();
frm_Giris.txtSifre.Enabled = true;
frm_Giris.txtSifre.Clear();
frm_Giris.checkBox2.Enabled = true;
frm_Giris.checkBox2.Checked = false;

SqlCommand cmd2 = new SqlCommand();
cmd2.Connection = con;
cmd2.CommandType = CommandType.Text;
cmd2.CommandText = "UPDATE Hesaplar SET BeniHatirla = 0 WHERE BeniHatirla = 1";

try
{
cmd2.ExecuteNonQuery();
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}
}
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}

con.Close();
}

// Kayıt Getirme
public void Hesap()
{
SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=EMIRHAN\SQLEXPRESS;Initial Catalog=CompanyDB;Persist Security Info=True;User ID=sa;Password=123456";
con.Open();

SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT * FROM Hesaplar WHERE ID = @ID";

cmd.Parameters.AddWithValue("@ID", kullaniciid);

SqlDataReader dr = cmd.ExecuteReader();

if (dr.HasRows)
{
dr.Read();
if (dr["Maas"].ToString() == "")
{
lblID.Text = dr["ID"].ToString();
lblKullaniciAdi.Text = dr["KullaniciAdi"].ToString();
lblYetki.Text = dr["Yetki"].ToString();
lblMaas.Text = "Yok";
lblAcilisTarihi.Text = dr["AcilisTarihi"].ToString();
lblKurtarmaKodu.Text = dr["KurtarmaKodu"].ToString();
}
else
{
lblID.Text = dr["ID"].ToString();
lblKullaniciAdi.Text = dr["KullaniciAdi"].ToString();
lblYetki.Text = dr["Yetki"].ToString();
lblMaas.Text = dr["Maas"].ToString();
lblAcilisTarihi.Text = dr["AcilisTarihi"].ToString();
lblKurtarmaKodu.Text = dr["KurtarmaKodu"].ToString();
}
}
con.Close();
}[/CODE]
Merhabalar, benim bir okul projem var ve bu projede bir hesap sistemi bulunmakta. Hesap sisteminde hesap formunda kullanıcı hesabımı aç butonuna bastığı an olan zamanı veri tabanında DATETIME veri tipli sütunuma yazdırıyorum. Sonrasında bu veriyi çekmek istediğim zaman gün ve ayın yeri yanlış geliyor. Aşağıda parça parça kayıt ekleme kodlarımı ve kayıt çekme kodlarımı görebilirsiniz.

Komutlarım;
[CODE lang="csharp" title="Kodlar" highlight=""94, 103, 27""94, 103, 27""]// Kayıt Ekleme
private void btnKayit_Click(object sender, EventArgs e)
{
if (txtKullaniciAdi.Text == "")
{
MessageBox.Show("Bir kullanıcı adı giriniz. (Maksimum 50 karakter.)", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
else if (txtSifre.Text == "")
{
MessageBox.Show("Bir şifre giriniz. (Maksimum 50 karakter.)", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=EMIRHAN\SQLEXPRESS;Initial Catalog=CompanyDB;Persist Security Info=True;User ID=sa;Password=123456";
con.Open();

SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "INSERT INTO Hesaplar (ID, KullaniciAdi, Sifre, Yetki, AcilisTarihi, KurtarmaKodu, BeniHatirla) VALUES (@ID, @KullaniciAdi, @Sifre, @Yetki, @AcilisTarihi, @KurtarmaKodu, @BeniHatirla)";

cmd.Parameters.AddWithValue("@ID", lblHesapID.Text);
cmd.Parameters.AddWithValue("@KullaniciAdi", txtKullaniciAdi.Text);
cmd.Parameters.AddWithValue("@Sifre", txtSifre.Text);
cmd.Parameters.AddWithValue("@Yetki", lblYetki.Text);
cmd.Parameters.AddWithValue("@AcilisTarihi", DateTime.Now.ToString());
cmd.Parameters.AddWithValue("@KurtarmaKodu", lblKurtarmaKodu.Text);
cmd.Parameters.AddWithValue("@BeniHatirla", 0);

try
{
if (MessageBox.Show("ID: " + lblHesapID.Text + "\nKullanıcı Adı: " + txtKullaniciAdi.Text + "\nYetki: " + lblYetki.Text + "\nKurtarma Kodu: " + lblKurtarmaKodu.Text + "\n\nBu bilgilerle kayıt olmak istediğinize emin misiniz?\n\nNOT: Kurtarma kodunuzu saklamayı unutmayın!", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
MessageBox.Show("Başarıyla kayıt oldunuz.", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
cmd.ExecuteNonQuery();
this.Close();
frm_Giris = new Giris();
frm_Giris.txtKullaniciAdi.Enabled = true;
frm_Giris.txtKullaniciAdi.Clear();
frm_Giris.txtSifre.Enabled = true;
frm_Giris.txtSifre.Clear();
frm_Giris.checkBox2.Enabled = true;
frm_Giris.checkBox2.Checked = false;

SqlCommand cmd2 = new SqlCommand();
cmd2.Connection = con;
cmd2.CommandType = CommandType.Text;
cmd2.CommandText = "UPDATE Hesaplar SET BeniHatirla = 0 WHERE BeniHatirla = 1";

try
{
cmd2.ExecuteNonQuery();
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}
}
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}

con.Close();
}

// Kayıt Getirme
public void Hesap()
{
SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=EMIRHAN\SQLEXPRESS;Initial Catalog=CompanyDB;Persist Security Info=True;User ID=sa;Password=123456";
con.Open();

SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT * FROM Hesaplar WHERE ID = @ID";

cmd.Parameters.AddWithValue("@ID", kullaniciid);

SqlDataReader dr = cmd.ExecuteReader();

if (dr.HasRows)
{
dr.Read();
if (dr["Maas"].ToString() == "")
{
lblID.Text = dr["ID"].ToString();
lblKullaniciAdi.Text = dr["KullaniciAdi"].ToString();
lblYetki.Text = dr["Yetki"].ToString();
lblMaas.Text = "Yok";
lblAcilisTarihi.Text = dr["AcilisTarihi"].ToString();
lblKurtarmaKodu.Text = dr["KurtarmaKodu"].ToString();
}
else
{
lblID.Text = dr["ID"].ToString();
lblKullaniciAdi.Text = dr["KullaniciAdi"].ToString();
lblYetki.Text = dr["Yetki"].ToString();
lblMaas.Text = dr["Maas"].ToString();
lblAcilisTarihi.Text = dr["AcilisTarihi"].ToString();
lblKurtarmaKodu.Text = dr["KurtarmaKodu"].ToString();
}
}
con.Close();
}[/CODE]
Yapıldı.
 
Son düzenleme:

Yeni konular

Geri
Yukarı