İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Programlama
  4. Programlama Dilleri
Programlama Dilleri

Vb access id kolonu

berki8303.07.20144 cevap1.815 görüntüleme
2014'den beri2 mesaj
#1
con = New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\****\arac.accdb")        con.Open()
        sqlstr = "insert into kisi values (" & txtid.Text & ",'" & txtad.Text & "','" & txttel.Text & "','" & txtemail.Text & "','" & txtplaka.Text & "','" & txtsasi.Text & "','" & txtmarka.Text & "','" & txtmodel.Text & "','" & txtmyil.Text & "','" & txtkm.Text & "','" & txthacim.Text & "','" & txtguc.Text & "')"
        cmd = New OleDb.OleDbCommand(sqlstr, con)
        cmd.ExecuteNonQuery()
        MsgBox("Kayıt Girildi")
        con.Close()


projemdeki veritabanı access oluşturdugum tabloda id bolumu var ve bu bolum otomatik artmakta aynı zamanda birincil ve diger tablo ile ilişkilendirilmiş durumda
Yukardaki kodu yazdıgımda hata alıyorum id bolumunu hem koddan hemde veritabanından kaldırınca programım calısıyor
Sorum şu id bolumu mutlaka olmalı id bolumunu veritabanından ve vb kod satırından kaldırmadan nasıl kullanabılırım
Program dili : VB
Veritabanı : Access 2010
Visual Studio 2012
Cevaplar
2011'den beri9.780 mesaj
#2
Id alanını kendiniz atamak istiyorsanız access te veri tipini otomatik yapmamalısın. Eğer otomatik yapacaksan da, insert into ifadesinden çıkartmalısın ki, access kendisi bir numara atasın.
berki83 Konuyu açan
2014'den beri2 mesaj
#3
otomatik atamasını istiyorum çünkü diğer tablomdaki bi kolonla ilişkilendirildi
nasıl yapabilirim peki bunu bilginiz varmıdır ?
2012'den beri236 mesaj
#4
Veri tabanı kuralları vardır. bire çok ilişki, çoka çok ilişki gibi. Senin projende sanırım çoka çok ilişki var. Bu durumda yeni bir tablo açıp ilişkilenecek kolonları o tabloya yaz ve ana tablondakilerle eşleştir.
2011'den beri9.780 mesaj
#5
berki83 dedi: ↑
otomatik atamasını istiyorum çünkü diğer tablomdaki bi kolonla ilişkilendirildi
nasıl yapabilirim peki bunu bilginiz varmıdır ?
İlla ki otomatik sayı olsun dersen bu iş kayıt yazıldığı zaman bağlantılı dosyaya (örneğin detay tablosuna) trigger yazılarak veritabanı tarafından yapılır. Ancak senin kullandığın veritabanı access olduğu için böyle bir şansın yok.

master-detail ilişkisi içinde olan bu şekilde bağlantılı tablolarda (access üzerinde) otomatik tanımlamayın. İd numarasını kendiniz verin, verdiğiniz bu numarayı da ilişkili tabloya kaydı açarken kullanın. Başka yolu yok.

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.