MSSL ile Key Alana Aynı kayıtı Girmek

MS SQL Server veritabanı ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

MSSL ile Key Alana Aynı kayıtı Girmek

Mesaj gönderen pro_imaj »

Merhaba,

MSSQL ile Key alan olarak tanımlanan bir alana aynı kayıtı girmek için ne yapmak gerekir acaba.

Aslında böyle birşeyin olduğunu bile bilmiyordum ama gözümle gördüm oluyor. (Bir prog vt sini inceledim) Benim bildiğim kadarıyla MSSQL key tanımlamak için sadece bir yer var yani bunuda ayarı vs yok ki buradan bunun key tipini belirteyim.

Teşekkür ederim.

Saygılarımla
Çalışmalarınızda başarılar.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Mesaj gönderen pro_imaj »

ayrıca bu tür bir şeyin imkanlı olmadığına dair sitede bir arkadaşımızın makalesi ile karşılaştım.

viewtopic.php?t=9848&highlight=primary+key

Key alana aynı değer kesinlikle birdaha girilemez diye.

Böyle bişey var yani key olarak tamımlanan alana tekrar aynı kayıtı girebiliyoruz.

Saygılarımla

Not: Bun soruyu sormamdaki amaç Bir prog Vt lerinden aktarma yapıyorum aktarma işlemi iiçin keyleri kaldırıyorum sonra işleöm bittikten sonra keyleri tekrar tanımlamaya kalktığımda kayıt edemiyorum. Ama halbuki trasfer işleminin kaynağını oluşturan vt ile aynı vt. sadece isimleri değişik.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
onaydin

Mesaj gönderen onaydin »

Primary Key alanına benzer iki kayıt girmeye çalışmak, primary keyi insanın ne sebeple oluşturduğunu bilmemesi manasına gelir ki madem benzer kayıt olsun istemiş neden primary key tanımlıyorsun diye adama bir soru sorabilirler.

Efendim sizin gözlerinizle bizzat gördüğünüz durumda ise primary key olarak iki ya da daha çok alan tanımlanmış olabilir. Bu iki alandaki kayıtların birbirleriyle eşleşmemesi durumunda aynı alan içinde mükerrer kayıt olması halinde bir sorun çıkmaz pk nin işleyişine aykırı bir durum olmaz.

Eğer böyle bir durum değilse mssql in helpini açıp primary key den neyi anladığına bakmamız gerekmektedir.
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Tek bir alana key vermemiş oalbilirler. Mesela iki alan birden key olur, iki alana birden bakılır key durumuna. Yani

Alan1:int PK
Alan2:int PK

Bu durumda ;
Alan1 Alan2
---------------
1 1
1 2
1 3


şeklinde değerler alabilir. Ama tabiki Alan1:1 Alan2:1 şekilnde ikinci bir kayıt olamaz PK tekil olmalıdır yani unique.
ASE
Kıdemli Üye
Mesajlar: 518
Kayıt: 28 Ağu 2003 03:17
Konum: samsun
İletişim:

Mesaj gönderen ASE »

Arkadaşlar konuyla çok ilgisi yok ama pk alan ende access da birden fazla aynı kayıt girildiğini gördüm. üstelik de otoartansayı alanıydı. ama bunu normal access üzerinden değil access in tuttuğu kod dosyalarından yapmışlar ve örnek olarak da bana göndermişlerdi.
Bende saklamıştım isteyenler aşağıdaki linkten ilgili dosyayı indirip bakabilirler.

Kolay gelsin

http://www.aseyazilim.com/download/autonumber.zip
Allah'ım!...
Yol boyunca bırakma elimi...
Düşerim sonra...


ASE YAZILIM
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Mesaj gönderen pro_imaj »

Merhaba,

arkadaşlar @naile hanımın belirttiği şekilde oluyormuş. Ama işin garip tarafı MSSQL de bu alan unique diil daha doğrusu unique işati kısmı false. durumda.

Büyük ihtimalle naile hanımın belirtiği şekildedir. vt çok karışık olduğu için çözemedim galiba.

Yardımlarınız için tşk ederim.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Cevapla