Birincil anahtar veya Benzersiz dizin? | Netgez.com
SORU
28 Ocak 2009, ÇARŞAMBA


Birincil anahtar veya Benzersiz dizin?

İş yerinde birincil anahtarları yerine benzersiz dizinleri büyük bir veritabanı var ve gayet iyi çalışıyor.

Yeni bir proje için yeni bir veritabanı tasarlıyorum ve bir ikilem var:

GERÇEK projelerde DB teorisi, birincil anahtardır " TAMAM, temel element, ama her ikisi de avantajları ve dezavantajları nelerdir?

Projelerde ne kullanıyorsunuz?

DÜZENLEME:...ve ne birincil anahtarları ve MS SQL server çoğaltma hakkında?

CEVAP
26 Mayıs 2010, ÇARŞAMBA


Benzersiz bir dizin nedir?

Bir sütun üzerinde benzersiz bir dizin de iki farklı satır sütun içinde iki eşit değerlere sahip olamaz, bu kısıtlamayı zorlar bu sütunda dizin. Örnek:

CREATE TABLE table1 (foo int, bar int);
CREATE UNIQUE INDEX ux_table1_foo ON table1(foo);  -- Create unique index on foo.

INSERT INTO table1 (foo, bar) VALUES (1, 2); -- OK
INSERT INTO table1 (foo, bar) VALUES (2, 2); -- OK
INSERT INTO table1 (foo, bar) VALUES (3, 1); -- OK
INSERT INTO table1 (foo, bar) VALUES (1, 4); -- Fails!

Duplicate entry '1' for key 'ux_table1_foo'

Son bir ekleme ikinci kez bu sütuna değeri 1 eklemek çalıştığında sütun üzerinde benzersiz dizin foo aykırı olduğu için başarısız.

MySQL bir tablonun birden çok Boşluk sağlar.

Mümkün birden fazla sütun üzerinde benzersiz bir dizin olun.

Birincil anahtar karşı benzersiz bir dizin

Aynı şeyler:

  • Birincil anahtar benzersiz bir dizin göstermektedir.

Farklı şeyler:

  • Birincil anahtar da BOÅž DEĞİL anlamına gelir, ama benzersiz bir dizin null olabilir.
  • Yalnızca bir tek birincil anahtar olabilir, ama birden çok benzersiz bir dizin olabilir.
  • EÄŸer clustered ındex tanımlı ise o zaman orada hiçbir birincil anahtar kümelenmiÅŸ dizin olacak.

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • 24 Канал

    24 КанаÐ

    5 ÅžUBAT 2006
  • AlaskanGrizzly

    AlaskanGrizz

    30 EKÄ°M 2009
  • Peter Sharp

    Peter Sharp

    11 ÅžUBAT 2013