C# windows form application hata deli olacağım acil yardım

Dlspop

Öğrenci
Katılım
7 Aralık 2013
Mesajlar
3
Reaksiyon puanı
0
Puanları
0
Windows forms application ile access veritabanı arasında bağlantı yapmaya çalışıyorum fakat hata alıyorum hatayı veren kod bloğum ;

private void button1_Click(object sender, EventArgs e)
{
baglanti.Open();
OleDbCommand hastayatir = new OleDbCommand("Insert INTO Hastalar(TC Kimlik No,Hasta Adı,Hasta Soyadı,Geldiği Poliklinik,Geldiği Tarih,Geldiği Saat,Oda No) VALUES ('" + textBox1.Text + " ',' " + textBox2.Text + " ',' " + textBox3.Text + " ',' " + textBox4.Text + " ',' " + textBox5.Text + " ',' " + textBox6.Text + " ',' " + textBox7.Text + " ')",baglanti);
hastayatir.ExecuteNonQuery();
MessageBox.Show("Hasta Kaydı Başarılı.");
baglanti.Close();
}

aldığım hata syntax error Insert Into Statement
bağlantıyı tanımladığım yer burası ;
OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0 ;Data Source=Hastalar.accdb");
 

kam turalı

Doçent
Katılım
24 Ocak 2010
Mesajlar
784
Reaksiyon puanı
14
Puanları
18
Doğrusunu söyleyemem ama "insert" komut yazımında hata var..
 

Champion78

Müdavim
Müdavim
Katılım
29 Eylül 2006
Mesajlar
1,716
Reaksiyon puanı
43
Puanları
228
Veritabanında int veya sayı olarak tanımladığın herhangi bir alan varsa bu komutu kullandığında o hatayı alırsın, çünkü tüm değerleri string olarak geçiyorsun. Önce alanları bir kontrol et istersen.
 

eSa

Dekan
Katılım
5 Kasım 2011
Mesajlar
9,782
Reaksiyon puanı
352
Puanları
263
Alan isimlerini Türkçe karakterli ve boşluklu kullanmamaya çalışın.

....,Hasta Soyadı,Geldiği Poliklinik,Geldiği Tarih, ... gibi alanları

....,[Hasta Soyadı],[Geldiği Poliklinik],[Geldiği Tarih], ...

Şeklinde değiştirin.
 

Dlspop

Öğrenci
Katılım
7 Aralık 2013
Mesajlar
3
Reaksiyon puanı
0
Puanları
0
Veritabanında int veya sayı olarak tanımladığın herhangi bir alan varsa bu komutu kullandığında o hatayı alırsın, çünkü tüm değerleri string olarak geçiyorsun. Önce alanları bir kontrol et istersen.

Veritabanımda herşey text olarak kayıtlı yani değişken uymsuzluğu yok.


Alan isimlerini Türkçe karakterli ve boşluklu kullanmamaya çalışın.

....,Hasta Soyadı,Geldiği Poliklinik,Geldiği Tarih, ... gibi alanları

....,[Hasta Soyadı],[Geldiği Poliklinik],[Geldiği Tarih], ...

Şeklinde değiştirin.

Bunu şimdi deneyeceğim.

- - - Mesaj Güncellendi - - -

The table 'Hastalar' is already opened exclusively by another user, or it is already open through the user interface and cannot be manipulated programmatically.

Şimdi de bu hatayı alıyorum :(
 

Champion78

Müdavim
Müdavim
Katılım
29 Eylül 2006
Mesajlar
1,716
Reaksiyon puanı
43
Puanları
228
Access açıksa onu kapat diyor, veya kodunda daha önce başka bir yerde baglanti.open dedikten sonra close yapmamış, bağlantıyı açık bırakmış da olabilirsin.
 

Dlspop

Öğrenci
Katılım
7 Aralık 2013
Mesajlar
3
Reaksiyon puanı
0
Puanları
0
Sorun çözüldü hepinize çok teşekkürler
 
Üst