field 'Alan Adı' cannot be modified Hatası

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
longhorn

field 'Alan Adı' cannot be modified Hatası

Mesaj gönderen longhorn »

merhaba az önce sordugum sorulardan vazgectim.şimdide msaccess de deniyorum.fakat bu seferde field 'Alan Adı' cannot be modified hatası veriyo msaccess de birincil anahtarda atnımladım.her iki alanada.ado table kullandım.umarım doğru yapmışımdır.yardım edin ne olud...
Kullanıcı avatarı
ALUCARD
Üye
Mesajlar: 1270
Kayıt: 27 Eyl 2003 10:12
Konum: Samsun
İletişim:

Mesaj gönderen ALUCARD »

longhorn yazdı:merhaba az önce sordugum sorulardan vazgectim.
:x ee ben bunu ıokumadım ne olacak şimdi sorunu tekrar yazarsan sevinerek yardım etmeye çalışırım... :oops:
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz

Erkan ÇAĞLAR
longhorn

field 'Alan Adı' cannot be modified

Mesaj gönderen longhorn »

sorun su ben ne paradoxta nede msacce de iki tabloyu birbirine bağlayamadım.msaccess de detail tabloya kayıt girerken field 'Alan Adı' cannot be modified bu hatayı veriyo.bana iki tabloyu nasıl bağlıcamı (ms access de tabi) anlatırsanız sevinirim.yardımlarınızı bekliyorum
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Yapmış olduğun bağlantı şekli ne Tablo mu Query (SQL) mi şayet tabloysa işin basit

Yapman gerekenler
1 Tablon Ana Tablon olsun yani MASTER
2 Tablon Detay Tablon olsun yani DETAIL

birinci tablonda bağlantı oluşturacağın bir anahtar alan olmalı bu alan bir id numarası olabilir yada alanlarda kullandığın bir değer olabilir burada dikkat etmen gereken olay bu alan bu veri 1 den fazla olmaması hususunda olacaktır. bu yüzden bunu ID alanı olarak seçelim buna MASTER ID diyeceğiz.

1 Tablomuz da bir ID alan olacak buradaki alanda sadece 1 kayıtın sakladığı değeri başka kayıt saklamayacak.

ikinci tablomuzda ise bağlantı oluşturacağın bir alan oluşturacaksın bu da ilişki kurmamız için gerekli bir alan olacak bu alan MASTER tablomuzdaki alan ile özellikleri aynı olacak mesala MASTER tablomuzdaki alanımız INTEGER ise DETAY tablomuzdaki alanımız da INTEGER olacak sadece PRIMARY KEY olmayacak yani birincil anahtar.

buda anlaşıldıysa DATASET üstünden gerekli ayarlamaları yaparsınız.

Kolay Gelsin....
İyi Geceler.

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
longhorn

tablo bağlama

Mesaj gönderen longhorn »

hüseyin abi senin dediğin gibi yaptım.şimdi abi bak bende kaset diye ana tablo timecode diye de detail tablo var.

ana tablo
Kaset_no:integer index tanımlı
sure:A
konu:A

detail ise
Kaset_no:integer index taımlı
timecode:A
konu:A

bu şekilde oluşturdum.sonra table2 nin mastersource kısmına master tablomun datasource nu bağladım.master fields kısmınada Kaset_no alnlarını bağladım.master tabloma bir kayıt girdiğimde ona ait altkayıtlar girmek istiyorum.yani detail tablosu.fakat detail tablosuna 2. kaydı girerken Key violation hatası veriyor.Mesela ben master tabloda kaset_no kısmına 1 den başlayarak kaç tane kayıt varsa devam ediyor.detail tablosunda ise mesela 1. kayıda bağlı 15 tane kayıt var.onlarında listenlemesi gerekiyo ama olmuyo işte.umarım cok acık olmustur.yardım edin ne olur............(bu işlemler paradoxta yapılmıştır.acceess de de hata veriyo hem paradoxta hemde access de nasıl yapacağımı anlatırsanız sevinirim.) teşekkür ederim
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Projeni gönder mail adresime bir bakayım problem neymiş.

Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Problem Tablolar yanlış yapılandırılmış

Alan özellikleri
Kaset Tablosu
1.Kaset_No Autoincrement + Primary Key (*)
2.Sure Tip Alpha Size (15)
3.Konu Tip Alpha Size (35)

TimeCode
1.ID Autoincrement + Primary Key (*)
2.Kaset_No Tip Long Integer
3.TimeCode Tip Alpha Size (15)
4.Konu Tip Alpha Size(15)

TimeCode Tablosunda Kaset_No alanı Database Desktop ta SecondIndex olarak yapılandırıyoruz.

Tablolarımız işlemi bu kadar.

Sıra Geldi Delphi kısmında
Birinci Table1 imize Kaset Tablomuzu işaret ediyoruz.
ikinci Table2 imize TimeCode Tablomuzu işaret ediyoruz.

Şimdi Table2 de işlemlerimize devam edelim. Table2 nesnemiz aktifken Objeck Inspector penceremize gelelim ardından MasterSource kısmına DataSource1 i seçelim ardından MasterFields kısmındaki sekmeyi tıklayıp Field Link designer penceresini açalım burada Available Indexes sekmesinden oluşturmuş olduğumuz index i seçelim ben buna KASETX dedim sonra Detail Fields kısmındaki Kaset_No alanımız gözükecek mouse ile üzerine bir kez tıklayalım mavi olacaktır MasterFields kısmındada Kaset_No alan adamız olacak onu işaretleyelim ardından ADD butonuna tıklayalım Ok butonuna basınca pencere kapanacaktır. Bu işlemlerden sonra Proje problemsiz çalışacaktır şahsen bende çalışıyor.

Senden ricam biraz daha uğraşman problemin halolmazsa projeni mail olarak gönderirim.

Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Kimden: longhorn
Kime: husonet
Tarih: Prş Tem 08, 2004 2:46 pm
Konu: merhaba
merhaba hüseyin abi.sanırım oldu.sana nasıl yaptıgımı anlatim.sende dogru veya yanlıs dersin.

Master tablo
Kaset_no:Autoincrement +key(*)
sure:A
konu:A

detail tablo
ID:Autoincrement +key(*)
kaset_no:long integer
timecode:A
konu:A

bunları yaptım sonra timecode tabloda yani detail de sağ taraftaki table properties den secondery indexes'ı sectim.altında define diye bir buton acıldı ona tıkladım.detail tablomdaki alanlar cıktı sol tarafta.ordan kaset_no alanını sağ tarafa kaydırdım.ok dedim index ismi olarakda kasetx yazdım.sonra delphiyi açtım.table ve datasourceları koydum birbirine bağladım.sonra table2 nin mastersource kısmına master tablonun datasource na bağladım.master fields kısmını açtım.avilable indexes dan kasetx'i sectim.kaset_no alanlarını secip aşağı attım.ok dedim oldu.Ama mesela 1.kayıda 2 kayıt girdim.ID sırayla 1-2 oldu.sonra 2. kayıda 3 tane kayıt girdim.ID sırayla 3-4-5 oldu.3.kayıda 4 Kayıt girdim ID sırayla 6-7-8-9 oldu neden bu şekilde oldugunu anlamadım.ama eğer dogru yaptıysam ben yardımların cok saol abi.kolay gelsin görüşmek üzere.

Dip Not:Hüseyin Abi Verilerimin bozulma,kaybolma vb gibi durumlar olabilirmi.
Öncelikle bu konuyu Özel Mesaj olarak atmasaydın beni mutlu kılardın çünkü bu problem ile karşılaşan başka bir arkadaş çıkarsa bu cvp lardan yararlanabilme olasılığı taşır.

ID olan tablon Anladığım kadarıyla Detay tablonun id si Autoincrement özelliği olduğu içi sayılar otomatik artmaktadır bu yüzden dolayı sıralı bir şekilde görmen doğaldır.

Veri Bozulma, Kaybolma gibi şeyler her zaman için olabilir bu yüzden yedeklerimizi düzenli şekilde almalıyız.

Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Cevapla