2012-08-26 15 views
8

Jestem nowy w dostępie (mam tylko wersję 2003) i zaczynam szaleć. Zastanów się również, że jestem nowicjuszem z DB w ogóle, więc teraz jestem w tym momencie, że jestem bardzo zdezorientowany ... proszę o pomoc. Próbuję zaprojektować bazę danych do katalogowania wszystkich posiadanych książek. Stworzyłem tabele i ustawiłem relacje Image of my DB http://img716.imageshack.us/img716/4592/databasev.png; Mam kilka tabel związanych z "Książkami" w relacji Wiele do wielu (np. Autorzy: każda książka może mieć wielu autorów i każdy autor może "mieć" wiele książek) i kilka innych w prostym One-To- Wiele (np. Typ książki: jedna książka może być tylko jednego typu, ale może być wiele takich książek.) Teraz chciałbym utworzyć pojedynczą formę (z podformatami, jeśli to konieczne), aby wypełnić moje tabele. chciałbym móc dodać nową książkę, a następnie wybrać, na przykładach istniejących autorów lub dodać autor na nowo;.? samo dla danych w relacji jeden-do-wieluutwórz formularz dodawania rekordów w wielu tabelach

Jak mogę to zrobić

Naprawdę jestem zagubiony, potrzebuję wielu formularzy i dodam je jako podrzędne formy głównego, czy potrzebuję zapytań, czy co?

Odpowiedz

17

Powyższy projekt wymaga czterech podformuł. Każdy podformułek powinien opierać się na tabeli skrzyżowań z identyfikatorem książki jako łączącym polem potomnym i wzorcowym oraz polem kombi opartym na odpowiedniej tabeli dla drugiego identyfikatora tabeli.

Na przykład, pierwszy podformularz jest Autorzy tabela oparta jest na to Libri_Autori

Link Master Field: Id 
Link Child Field: SchedaLibro 

Combobox:

Control Source: SchedaAutore 
Row Source : SELECT Id, Nome FROM Autori 
Bound Column: 1 
Column Count : 2 
Column Widths : 0, 2 

Stwórz swoją postać książki, a następnie rozpocząć dodawanie podformularze, czarodzieje będą wykonuj większość pracy za ciebie.

Aby dodać rekordy do tabeli autorów, należy ustawić opcję Limit To List na Yes i uruchomić kod w zdarzeniu Not In List. Lubię używać małej wyskakującej formy do dodawania pozycji do tabel "z powrotem do ziemi". To może być łatwiejsze z Access 2010, ponieważ można ustawić ListItemsEditForm


1, formie książkowej, tuż przed dodaniem podformularz. Zwróć uwagę, że wybrano Użyj kreatorów kontroli. Jest to ustawienie domyślne, więc jeśli go nie odznaczysz, powinno być dobrze.

Step 1 Using a wizard

Poszczególne etapy kreatora dodawania podformularz Wizard steps for adding a subform

Wybór pola podformularzu

Selecting the subform fields

wybierając łącze dziecka i pól mistrzowskich

Selecting the link child and master fields

Formularz pokazujący sterowanie podformularza podświetlone na żółto i kontrola właściwości

Subfrom control

2, dodając combo

Można zmienić pola dodane przez kreatora podformularza do combo przez klikając prawym przyciskiem i ustawiania właściwości siebie ...

Right-click for change to combo

... lub możesz usunąć istniejącą kontrolę i dodać kombinację za pomocą kreatora. Pierwszym krokiem jest wybór typu kombinacji.

Step 1 combo type

Drugim krokiem jest, aby wybrać tabelę lub kwerendę

Step 2 choose table or query

Krok trzeci jest wybór pola

Step 3 choose fields

Krok czwarty wybór kolejności sortowania i nie jest tutaj wyświetlany, jest to krok piąty, czyli ustawienie c olumn szerokościach

Step 4 skipped, step 5 set column widths

Krok szósty jest ustawić źródło sterowania

Step 6 set Control Source

Będziesz skończyć z combobox z właściwościami ilustrowany

Subform combo and properties

końcowy formularz

Final form

+0

Dzięki !. Rzeczywiście nie jest dla mnie jasne, ponieważ powiedziałem, że jestem nowicjuszem, ale popracuję nad Twoimi sugestiami i wrócę po więcej pytań. – rodedo

+0

Zobacz przykładową bazę danych Northwind (http://support.microsoft.com/kb/824265), aby zobaczyć, jak działają te pomysły. Formularz zamówienia pokazuje, jak niektóre pomysły współpracują ze sobą. Jednak używaj Northwind tylko w bardzo trudnych przewodnikach, kodeks nie jest najlepszy. – Fionnuala

+0

Hummm ... czy jest jakiś krokowy poradnik online? Uważam, że nadal brakuje mi podstawowych kroków; jak utworzyć podformularz na podstawie Libri_Autori, wizard?jak zdefiniować "Link master/child field"? i gdzie mogę zdefiniować Combobox? Do tej pory dodałem go w zakładce LookUp w widoku projektu tabeli dla tabeli Libri_Autori i pola SchedaAutore, czy to masz na myśli? – rodedo