C# Veritabanı Tablo Nasıl Kayıt Edilir?

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
2 combobax var cinsiyet ve alan seçimi yapıyoruz bu seçimlerimize göre veri tabanında istediğimiz tabloya nasıl kayıt yaptırabiliriz vt(acces) şimdiden teşekkürler
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

Windows Form ya da Wpf olarak proje tipi belirtilmemiş. Aynı zamanda Access veritabanı kullanırken dikkat edilmesi gereken ayrılmış keywordler (anahtar bildirimler) de dikkat ediniz. Eğer herhangi bir çakışma veya hata alıyorsanız işlemlerinizde buradan anahtar bildirimleri kontrol ediniz. Herhangi bir isimlendirme hatasında köşeli parantez kullanımını deneyiniz.

Örnek _Name özel bir bildirimdir Access'te ve sizde bunu kullanıyorsunuz. Bunu [_Name] olarak yazmak zorundasınız.

Diğer bir yandan parametreli aktarım her zaman en iyi tercihdir.

Kodların alıntı yapıldığı yer

string sqlQuery = "INSERT INTO Users (`Name`,`Surname`,Department,`Function`,Staffcode,`Password`) values (?,?,?,?,?,?)";
using (OleDbConnection conn = new OleDbConnection("your connection string"))
using(OleDbCommand cmd = new OleDbCommand(sqlQuery, conn))
{
conn.Open();
cmd.Parameters.AddWithValue("@Name", this.Name_textbox.Text);
cmd.Parameters.AddWithValue("@surname", this.Surname_textbox.Text);
cmd.Parameters.AddWithValue("@Department", this.Department_textbox.Text);
cmd.Parameters.AddWithValue("@function", this.Function_textbox.Text);
cmd.Parameters.AddWithValue("@Staffcode", this.Staffcode_textbox.Text);
cmd.Parameters.AddWithValue("@password", this.Password_textbox.Text);

cmd.ExecuteNonQuery();

}

Bağlantı konusunda nasıl yapabilirim derseniz de buradan hangi veritabanına bağlanmak istiyorsanız bilgilere ulaşabilirsiniz.

Saygılarımla
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
bilgileriniz için çok teşekkür ederim bu sorunu hallettim sayılır inşaallah başka sorun yaşadığım yerler var onlardada yardımcı olursanız çok sevinirim
--- Gönderi Güncellendi ---
bir sorum daha olacaktı comboboxlardan seçim yapıp veri tabanından istediğim tabloyu data gridwieve aktarıyorum bu aktardğım tablolardan istediğim kişiye tıklayıp sil butonuna tıkladğımda nasıl silebilirim, yani tek butonla farklı tablolardan nasıl silme işlemi yapabilirim şimdiden çok teşekkür ederim
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

senaryomuzu biraz daha geliştirerek ilerleyelim. Sizin birkaç adet DataGridView kontrolünüz var ve veri tabanından verileri çektikten sonra istediğiniz verileri veya belirlemiş olduğunuz verileri silmek için en bilinen tutarlı yol ID ile silme işlemidir. Siz verileri DataGridView'a yüklerken DataMember property'sine veya DataPropertyName veya Wpf için de DisplayMemberPath/DisplayIndex (Columns elementi altında) özelliklerine yüklemiş olduğunuz verilen aynı zamanda ID'sini de yükleyiniz. DataGridView verileri gösterecek,

Form projeniz için : dataGridView1.Columns["IdKolonu"].DataPropertyName = "ID";
Wpf projeniz için : DataGrid elemeni altında <DataGridTextColumn DisplayIndex="asd" Visibility="Hidden".. gibi kullanabilirsiniz.

Ardından bir satıra tıklama işleminde (seçilmesi halinde) gerekli kod Selected.. gibi seçilen satırın index'ini bulup ardından ID'sini elde deceksiniz. SOnra bu id'yi de silmek için kullanacaksınız. Kısace bu şekilde olmasını tavsiye ediyorum.

Aynı şekilde diğer tablolarıda bir event içerisinde çoklu kullanımını veya çoklu silme işlemini gerçekleştirebilirsiniz.

Herhangi bir yanlışım varsa düzeltin lütfen veya sorunuz olursa elimden geldiğince yardımcı olurum.

Saygılarımla
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
daha çok yeni oldğum için pek birşey anlamadım ama ilginiz için çok teşekkür ederim iyice araştırıp anlamaya çalışacağım
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

veritabanında bilgileri tuttuğunuz taloda Id kolonu vardır sanıyorum. O Id kolunu bilgisiyle işlemlerinizi yapın demek istedim. Örnek olarak silme, güncelleme gibi.

Anlamadığınız yeri tekrar tekrar sorun. Sormadan anlayamazsınız. Ben defalarca açıklama yaparım. Bende kolay anlamadım. :)

Saygılarımla
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
çok teşekkür ederim sizi bıktırma istemedim :) ozaman başka bir soru sorayım bir textbox var buna dk saniye salise(01:20:50) şeklinde veri girdik butona tıkladğımda bunu saliseye nasıl çevirrim c# ta şimdiden teşekkür ederim :)
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

bir TimeSpan Struct'unu kullanabilirsiniz. Örnek olarak;

Kod:
TimeSpan t = new TimeSpan(1, 20, 50);
Console.WriteLine(t.TotalMilliseconds);

Saygılarımla
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
çok teşekkür ederim hayırlı günler...
--- Gönderi Güncellendi ---
kusura bakmayın tekrar rahatsız ediyorum bu işte henüz çok yeniyim baktım araştırdım uğraştım ama yapmadım yani nasıl entegre edeceğimi bilmiyorum yani textboxa elle girdiğim 03:35:25 şeklindeki zamanı nasıl saliseye çevirip labele yazdırabilrim yardımcı olursanız çok sevinirim hakkınız helal edin
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

kusur yok, bilgiler bana ait değil. Ben yeni başladığımda sizden daha fazla soru soruyordum. Önemli olan bilgiyi paylaşmak. Hak'ı Rabbim bilir. Varsa helal olsun.

Kod:
string[] zamanDizi = TextBox1.Text.Split(':')
TimeSpan t = new TimeSpan(string[0], string[1], string[2]);
MessageBox.Show(t.TotalMilliSeconds) //Size sonucu verir

veya

Label.Text = t.TotalMilliSeconds.ToString();

Saygılarımla
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
çok teşekkür ederim soracağım çok soru var ama sizide bıktırmak istemiyom çok sağolun...
--- Gönderi Güncellendi ---
bu seferde parantez hatası verdi :)
Adsız.png
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

afedersiniz aceleden yanlış yazmışsım. string yerine zamanDizi yazacaksiniz.

Kod:
TimeSpan t = new TimeSpan(zamanDizi[0],zamanDizi[1],zamanDizi[2]);

Saygılar

Edit : Bıkmam merak etmeyin.
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
hta.png

bu seferde bu hatayı verdi
--- Gönderi Güncellendi ---
ilginiz için çok teşekkür ederim
 

sonerooz

Doçent
Katılım
25 Mart 2017
Mesajlar
555
Reaksiyon puanı
216
Puanları
43
Yaş
29
muhtemelen string olunca arıza çıkarmıştır, integer'a çevirip deneyin.

Kod:
int h = Convert.toInt32(zamanDizi[0]);
int m = Convert.toInt32(zamanDizi[1]);
int s = Convert.toInt32(zamanDizi[2]);

TimeSpan t = new TimeSpan(h,m,s);
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Ekli dosyayı görüntüle 22221
bu seferde bu hatayı verdi
--- Gönderi Güncellendi ---
ilginiz için çok teşekkür ederim

Merhaba,

ingilizceniz düzeyinizi sorabilir miyim ? Çünkü hatalara karşı dil yüzünden çaresiz kalmanız zorluk yaşatır size. Aynı zamanda bir herhangi bir metodun parantezini açtığınızda sizden istediklerini otomatik olarak gösterir. Yani sizin bunu görmüş olmanız gerekir ve buna göre yazmanız gerekir.

Saygılarımla

Edit : Ayrıca yukarıdaki arkadaşımız sağolsun cast (dönüştürme) işlemini yapmış. Bazen gözümüzden kaçabiliyor. Sizin yakalamanız gerekiyor bunları. :) Devam, sormak istediklerinizi sorun online kalacağım sizin için.
 

sonerooz

Doçent
Katılım
25 Mart 2017
Mesajlar
555
Reaksiyon puanı
216
Puanları
43
Yaş
29
Merhaba,

ingilizceniz düzeyinizi sorabilir miyim ? Çünkü hatalara karşı dil yüzünden çaresiz kalmanız zorluk yaşatır size. Aynı zamanda bir herhangi bir metodun parantezini açtığınızda sizden istediklerini otomatik olarak gösterir. Yani sizin bunu görmüş olmanız gerekir ve buna göre yazmanız gerekir.

Saygılarımla

Arkadaş description'dan bahsediyor. Yani en altta 4 tane hata vermiş ya. Orada yazıyor. Onları okumanızı ve anlamaya çalışmanızı tavsiye ederiz. Yoksa hiç ilerleyemezsiniz.
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
ilginiz için ikinizede çok teşekkür ederim :) evet ingilizcem yok ama translate var :) ordan baktım çevirmeyle ilgili bir işlem oldğunu anladım birşeyler denedim olmadı bu da c# ı ve programlamayı bilmediğimden kaynaklı :) bir soru daha sorayım şimdi çeviriyor ama 00:00:01 yazdğımda 100 cevabını alıyorım benim dk:saniye:saliseyi , saliseye cevirmem lazım örnek 02:34:23 toplamda kaç salise eder gibi.tekrar çok teşekkür ederim:)
--- Gönderi Güncellendi ---
pardon 00:00:01 yazdğımda 1000 yazıyor orada 1 yazması lazım salise oldğu için
 

sonerooz

Doçent
Katılım
25 Mart 2017
Mesajlar
555
Reaksiyon puanı
216
Puanları
43
Yaş
29
Kod:
int m = Convert.toInt32(zamanDizi[0]); //dakikayı aldık
int s = Convert.toInt32(zamanDizi[1]); //saniyeyi aldık
int sal = Convert.toInt32(zamanDizi[2]); //saliseyi aldık

TimeSpan t = new TimeSpan(0,m,s); // t bize zamanı çevirdi
sal += (int)t.TotalMilliSeconds; //çıkan sonuca saliseyi de ekledik
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

saniyeden saliseye TimeSpan ile çeviri yapabilirsin. Veya saliseden saniyeye.. SOnuçlar istediğin gibi olacaktır.

Kod:
Console.WriteLine("Saniyeden saliseye : " + TimeSpan.FromSeconds(1).TotalMilliseconds);
Console.WriteLine("Saliseden saniyeye : " + TimeSpan.FromMilliseconds(1000).TotalSeconds);

Saygılarımla
--- Gönderi Güncellendi ---
Siz yazın birazdan geleceğim..
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
yaptım salise de bi problem yok ama saniye ve dk da 1 sıfır fazla atıyor
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
örnek ekran görüntüsü ve kodarı paylaşır mısınız lütfen ?
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Yanlış sonuç ekranı ve hatanın yeri lütfen ?
Ayrıca atletizm de sanıyorum 1 saniye değeri için 100 salise değeri kullanılıyor. Yanlışlık varsa düzeltelim.

Saygılarımla

Edit : santi salise gibi birşeydi yanlış hatıramıyorsam.
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
peki teşekkür ederim
--- Gönderi Güncellendi ---
yanlış sonuç ekranı derken anlamdım ....birde 1 saniye 100 salise yani 00:00:10 yazdğımda 10 saliseyi veriyor ama 00:01:00 dediğimde yani saniyede veya dk da 1 sıfır fazladan atıyor
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

1 saniye 1000 salisedir. Çünkü salise, 1 saniyenin 1000'de biridir. Konuyu yanlış anlamış olabilirim. Yanlışlık varsa lütfen düzeltin. Bir resim paylaştım inceleyebilir misiniz lütfen ? Bu görüntüde bir sorun yoktur umarım ve açıklama da içindedir.

Saygılarımla

Untitled.png
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
peki çok teşekkür ederim başka konularda takılırsam yardımınıza müracaat ederim herşey için çok sağolun uğraştırdım sizide hayırlı akşamlar dilerim...
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Her zaman yardımcı olurum. Bende teşekkür ederim. Hayırlı akşamlar. Uğraşmak ne kelime.. :)

Saygılarımla
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
bir sorum daha var :) şimdi veri tabanımızda süre diye bir sütünumuz var bu sütündan en düşük zaman ile en büyük zamanı bulup büyüğü küçükten çıkarıp o farkı 100 e bölüp bi labela yazdırcağız şimdiden teşekkür ederim
 

sonerooz

Doçent
Katılım
25 Mart 2017
Mesajlar
555
Reaksiyon puanı
216
Puanları
43
Yaş
29
Nasıl yapacağımızı tarif ettiniz zaten. aynı bu sekil yapacağız kardeşim :): Kolay gelsin...
 

mbagbasi06

Öğrenci
Katılım
5 Mayıs 2017
Mesajlar
20
Reaksiyon puanı
7
Puanları
3
Yaş
32
Peki çok teşekkürler hayırlı günler dilerim:)
 
Üst