Jeg arbejder på en 2007 baseret Access DB med 202 kolonner, hvor jeg i designvisningen er i gang med at tilpasse datatyperne - primært: Tekst, Dato og klokkeslæt og Tal. I feltegenskaberne kan jeg jo styre indtastningsværdierne, hvilket jeg er meget begejstret for og det har lykkedes mig uden problemer, at gemme mine feltegenskaber undervejs - men nu (næsten halvejs) er jeg stødt på problemet:
"Der er defineret for mange felter. "
Og derefter denne besked:
"Denne fejl kan forekomme, hvis: Du har overskredet det maksimale antal kolonner, der er tilladt i tabellen, eller det maksimale antal låse for en enkelt fil. Egenskaben Indekseret for et felt er ændret fra Ja (dubletter tillades) til Ja (ingen dubletter), når der findes dubletdata i tabellen. Hvis det maksimale antal låse pr. fil er overskredet, kan du forøge antallet ved at redigere en post i registreringsdatabasen på den lokale computer. Dette kan dog ikke anbefales. Søg efter registreringsdatabaseværdien MaxLocksPerFile med Windows-registreringseditor (regedit.exe), og forøg værdien. Værdien MaxLocksPerFileer gemt som en del af følgende nøgle: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Access Connectivity Engine\Engines\ACE Hvis du redigerer en værdi i registreringsdatabasen i Windows, kan du risikere, at ændringen vil ødelægge registreringsdatabasen og gøre det umuligt at bruge Windows. Redigering af registreringsdatabasen sker på egen risiko. Hvis du redigerer registreringsdatabasen, anbefales det, at du først opretter en sikkerhedskopi af registreringsdatabasen. Hvis du har ændret egenskaben Indekseret for et felt, og der allerede findes dubletdata i tabellen, kan du enten nulstille egenskaben Indekseret til den tidligere indstilling eller fjerne dubletposterne i tabellen."
Det forstår jeg simpelthen ikke et ord af og jeg kan ikke komme videre med mine feltegenskaber for resten af min DB!
Hvad skal jeg gøre for at komme videre? For jeg vil have feltegenskaber udfyldt for resten af DB.
Det er egentlig en DB, jeg har overtaget og arbejder videre med. Så mit udgangspunkt er måske lidt skidt: Learning by doing!
Kan jeg oprette flere tabeller med færre kolonner i hver - i én og samme DB? Det må jeg vist lige læse lidt på! Med mindre du kan komme med en hurtig læsevenlig løsning til mit problem.
Jeg havde forstået det sådan, at man bare ikke måtte have mere end 255 kolonner - og det holder jeg mig jo under.
255 kolonner har jeg også lært i tidernes morgen, måske i 2003 versionen. Du kan sagtens oprette flere tabeller i samme db, og jeg er næsten sikker på, at det er samme antal tabeller som snatal kolonner.
Access er jo en relationsdatabase, hvor det groft sagt gælder om, at lave flere tabeller hvor data er "i familie" med hinanden og derefter relaterer disse tabeller med hinanden. det er også vigtigt at oprette primære nøgler som du bruger til relationerne.
Jeg kan se, at mit første spørgsmål har udløst en masse nye problemstillinger for mig!
Jeg er lidt i tvivl om, hvorvidt relationerne i min data er vigtige - det kunne de nok blive. Formålet med min tabel var som udgangspunkt en nem måde at inddatere data på - for mange brugere. I realiteten skal vi "kun" kunne trække oplysninger ud af den for at kunne danne os et statistisk overblik.
Jeg har læst mig frem til, at der findes tre typer tabelrelationer, hvor primær nøgle(r) skal placeres forskelligt! Så nu skal jeg vist gøre op med mig selv, hvilken, der passer til min DB! Og nåh ja, brush up på min viden om primær nøgle(r)!
Indtil videre mange tak for hjælpen - det kan være jeg vender tilbage:-)
Der er et par ting man skal være opmærksom på. Access gemmer til en vis grad gamle felt (kolonne) oplysninger, sandsynligvis for at kunne have support for Undo.
Dvs. at selv om du lige PT kun har 202 felter så kan antallet af gemte felter være en anelse højere. For at reducere dette tal til 202 felter igen, kan du f.eks benytte "Compact and Repair" som rydder op i den gemte ekstra information. Husk at tage en backup inden, for en sikkerheds skyld.
Derudover gælder der at hvis du ændrer et felt, så sker der rent praktisk det (når tabellen gemmes) at Access opretter et nyt felt med de nye parametre, opdaterer det nye felt med værdien af det gamle felt, og først derefter sletter det gamle felt. DVS. hvis du prøver at ændre 10 af de 202 felter så vil der rent midlertidigt være 212 felter i tabellen. Derfor kan du være nød til at ændre et begrænset antal felter, køre en "Compact and Repair" og sæ ændre nogle flere hvis dit behov for ændringer involverer mange felter.
Jeg foreslår derudover at du prøver at google "Database normalization" og læser om normalisering af databaser. Det kan godt virke som et skræmmende koncept men det er essentielt for god udvikling.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.