sql >> Database teknologi >  >> RDS >> Sqlserver

Kunne ikke opdatere .mdf-databasen, fordi databasen er skrivebeskyttet (Windows-program)

Den store ting, der ændrede sig mellem Windows XP og Windows Vista/7, er introduktionen af ​​UAC, som betyder, at brugere, selvom de er oprettet som administratorer, ikke rutinemæssigt har læse-/skriveadgang til "vigtige" placeringer såsom %programfiles% (Normalt C:\Program Files eller C:\Program Files (x86) ) bibliotek. Dette er grunden til, at dit program virker på Windows XP og ikke på Windows Vista.

Du skal gemme dine DATA i %programdata% mappe (som normalt er C:\ProgramData ) hvis dataene deles mellem brugere på maskinen eller %appdata% (som normalt er C:\Users\USERNAME_GOES_HERE\AppData\Roaming ), hvis det er specifikt for en given bruger. Du vil nu ikke længere støde på problemet med ikke at kunne skrive til filen.

Årsagen til dette er, at ved at gemme data i dit programs installationsmappe, du gør det forkerte . Windows forhindrede dig ikke i at gøre dette tidligere, men det var ret bredt dokumenteret, at %programfiles% var ikke det rette sted at gemme data.



  1. SQL-opdateringsforespørgsel ved hjælp af joins

  2. CONNECT BY eller hierarkiske forespørgsler i andre RDBMS end Oracle

  3. Hvordan får jeg det aktuelle tidszonenavn i Postgres 9.3?

  4. Brug som jokertegn i udarbejdet erklæring