Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Nie udało się zaktualizować bazy danych .mdf, ponieważ baza danych jest tylko do odczytu (aplikacja Windows)

Wielką rzeczą, która zmieniła się między Windows XP a Windows Vista/7, jest wprowadzenie UAC, co oznacza, że ​​użytkownicy, nawet jeśli są stworzeni jako administratorzy, nie mają rutynowo dostępu do odczytu/zapisu w „ważnych” lokalizacjach, takich jak %programfiles% (Zazwyczaj C:\Program Files lub C:\Program Files (x86) ). Dlatego Twoja aplikacja działa w systemie Windows XP, a nie w systemie Windows Vista.

Musisz przechowywać swoje DANE w %programdata% katalog (zwykle jest to C:\ProgramData ) jeśli dane są udostępniane między użytkownikami na komputerze lub %appdata% (zwykle jest to C:\Users\USERNAME_GOES_HERE\AppData\Roaming ), jeśli jest specyficzny dla danego użytkownika. Teraz nie będziesz już mieć problemu z brakiem możliwości zapisu do pliku.

Powodem tego jest to, że przechowując dane w katalogu instalacyjnym programów, robiłeś coś złego . Windows nie powstrzymał cię przed zrobieniem tego wcześniej, ale dość szeroko udokumentowano, że %programfiles% nie było odpowiednim miejscem do przechowywania danych.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. W tabeli odniesienia nie ma kluczy podstawowych ani kandydujących, które pasują do listy kolumn odniesienia w kluczu obcym

  2. Utwórz relację w SQL Server 2017

  3. SQL Server - sprzężenie wewnętrzne podczas aktualizacji

  4. Limit czasu połączenia dla serwera SQL

  5. Funkcja w SQL Server 2008 podobna do GREATEST w mysql?