14. november 2003 - 11:16Der er
21 kommentarer og 1 løsning
Kan ikke opdatere poster
Jeg har en database som består af en front-end og en back-end. Back-end'en er blevet flyttet til en SQL Server og nu kan jeg ikke opdatere data fra front-end'en mere! :(
Jeg kan godt ændre data direkte på SQL serveren, hvor jeg er logget på med en konto som tilhører Administratorer-gruppen i Windows 2000 Server, men ikke fra frontend'en, hvor jeg er logget på som "mig selv" (tilhører ikke Administratorer-gruppen). Min konto er dog Database Owner på den SQL database som jeg vil ændre i og jeg har Database Creator rettigheder på SQL Serveren.
dvs. jeg kan ikke opdatere data hvis der ikke er defineret primær nøgler. Sådan som databasen er opbygget, er det ikke alle tabeller der kan have primær nøgler baseret på eksisterende data (yeah, dårligt design, ender nok med at lave det hele om!), hvilket vil sige at nogle tabeller ikke kan opdateres! Hvis jeg laver en primær nøgle som et autonummeringsfelt, giver det også problemer, da SQL Serveren ikke har en sådan datatype og derfor konverterer feltet til typen Tal! :( Kinda stuck here...
Du kan altid opdatere alle tabeller selv om der ikke er primær nøgle på. I det tilfælde skal det bare gøres via en Update SQL, da Access ikke kan finde ud af det i tabel-vieweren.
Autonummereringsfelt er altid tal i Access, og er også tal i SQL. Det skal bare sættes på en lidt anden måde i SQL. Access har i mdb filer defineret Autonummerering som felttype - det har SQL ikke. Der er det en parameter på feltet.
Hvis du tilføjer et identity felt med en alter table, og sørger for, at den er primærnøgle, så burde formularen kunne håndtere det. Du skal måske sætte identity feltet på formularen i et skjult felt.
Jeg har ikke nogen data i tabellerne lige nu, så jeg tilføjede et ID felt, som primær nøgle. Opdaterede de sammenkædede tabeller og tilføjede et felt på formularen. :( Dét virker ikke.
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.