Харьцуулсан мэдээллийн баазын гадаад түлхүүрүүд

Гадаад түлхүүр нь өгөгдлийг бүхэл бүтэн ертөнцөд нээж өгдөг

Өгөгдлийн сангийн дизайнерууд нь харилцах өгөгдлийн санг хөгжүүлэхэд түлхүүрүүдийг өргөнөөр ашигладаг. Эдгээр түлхүүрүүдийн хамгийн түгээмэл нь үндсэн түлхүүрүүд болон гадаад түлхүүрүүд юм. Өгөгдлийн сангийн гадаад түлхүүр бол relational хүснэгт дэх талбар нь өөр хүснэгтийн үндсэн гол баганатай таарч байна. Гадаад түлхүүр үг хэрхэн ажилладаг талаар ойлгохын тулд relational database-ийн санааг авч үзье.

Холбогдох мэдээллийн сангуудын зарим үндэслэлүүд

Холбогдох өгөгдлийн санд өгөгдөл нь мөр, баганатай мөрүүдийг хадгалж, хайлт хийхэд хялбар болгодог. Холбогдох өгөгдлийн сан (аргонтын алгебрийг EF

IBM-д Codd 1970 онд), гэхдээ энэ нийтлэлийн сэдэв биш юм.

Практик зорилгын (болон математик бус хүмүүс) хувьд харьцангуй өгөгдлийн сан нь "холбоотой" өгөгдлийг эгнээ ба багананд хадгалдаг. Цаашилбал, энэ нь сонирхолтой болж өгдөг. Ихэнх өгөгдлийн сангууд нь нэг хүснэгтэд байгаа өгөгдлийг өөр хүснэгтэд хандах боломжтой болгож өгдөг. Хүснэгтүүдийн хоорондын холбоог үүсгэх чадвар нь харьцангуй мэдээллийн сангуудын жинхэнэ хүч юм.

Гадаад түлхүүр үг ашиглах

Ихэнх хүснэгтүүд, ялангуяа том, цогц мэдээллийн баазуудад байгаа хүмүүс гол түлхүүрүүдтэй байдаг. Бусад хүснэгтэд хандах зориулалттай хүснэгтүүд нь бас гадаад түлхүүртэй байх ёстой.

Баримтыг ихэвчлэн Northwinds өгөгдлийн сангаар ашиглахын тулд Бүтээгдэхүүний хүснэгтийн хэсэг нь:

Northwind мэдээллийн баазын Бүтээгдэхүүний хүснэгтийн тайлбар хэсэг
ProductID Бүтээгдэхүүний нэр Ангилал ID QuantityPerU Нэгжийн үнэ
1 Чай 1 10 хайрцаг х 20 уут 18.00
2 Chang 1 24 - 12 унц лонх 19.00
3 Aniseed Syrup 2 12 - 550 мл лонх 10.00
4 Chef Anton's Cajun амтлагч 2 48 - 6 унци лонхтой 22.00
5 Chef Anton's Gumbo Mix 2 36 хайрцаг 21.35
6 Эмээ нь Boysenberry Spread 2 12 - 8 унц лонхтой 25.00
7 Авга ах Бобын Органик Хатаасан лийз 7 12 - 1 lb pkgs. 30.00

БүтээгдэхүүнийID багана нь энэ хүснэгтийн үндсэн түлхүүр юм. Энэ нь бүтээгдэхүүн бүрт өвөрмөц ID өгдөг.

Энэ хүснэгтэд бас гадаад түлхүүрийн багана, АнгилалID- г агуулдаг. Бүтээгдэхүүний хүснэгтэд байгаа бүх бүтээгдэхүүн нь тухайн бүтээгдэхүүний ангиллыг тодорхойлдог Ангилах хүснэгтэд орох холбоосыг холбоно.

Өгөгдлийн сангаас авсан хүснэгтийн энэ хэсгээс авна уу.

Northwind мэдээллийн баазын категориудын хүснэгтүүд
Ангилал ID Ангилал нэр Тодорхойлолт
1 Ундаа Зөөлөн ундаа, шар айраг, цай, шар айраг, ислээ
2 Хольцууд Амтат, амтат сүмс, тайван, амтлаг, амтлагчтай
3 Нягтрал Амттан, чихэр, амтат боов
5 Сүүн бүтээгдэхүүн Бяслаг

Ангилалын багана нь энэ баганын үндсэн түлхүүр юм. (Энэ нь өөр нэг хүснэгтэнд нэвтрэх шаардлагагүй тул гадаад түлхүүр байхгүй байна.) Бүтээгдэхүүний хүснэгтэд гадаад түлхүүр бүр Ангилал хүснэгт дэх үндсэн түлхүүр рүү холбоно. Жишээ нь, Чай бүтээгдэхүүн нь "Beverages" гэсэн ангилалд багтдаг бол Анисийшир сирусийн ангилалд багтдаг.

Энэ холбоос нь relational өгөгдөлд өгөгдлийг ашиглах болон дахин ашиглах арга замыг олон аргаар үүсгэдэг.