Как я устанавливаю соединение SQL-сервера с только для чтения? Я пытался гуглить и все, что я нашел, был File Mode=Read Only
, но это не работало (Ключевое слово Режима файла, не поддерживаемое). Ссылка смотрела SQL конкретный CE.
Никакая удача с SQLite Read Only=True
также.
править-
Моя строка подключения ниже. У меня нет подсказки когда дело доходит до конфигурирования таблиц. Я не знаю, как сделать пользователей/полномочия.
rdconn = new SqlConnection(@"(wrong)Read Only=True;Server=.\SQLExpress;AttachDbFilename=test2.mdf;Database=dbo;Integrated Security=SSPI;User Instance=True;");
Просто установите для текущего пользователя разрешения только на SELECT.
Это то, что вы хотите?
Нажмите на текущую базу данных в SQL Server Management Studio, после нажмите на Security->Users. Найдите своего пользователя, щелкните на нем правой кнопкой мыши -> свойства->Securable. Просто отметьте SELECT, снимите отметку со всех остальных.
Вот ссылки по управлению разрешениями
http://www.mssqlcity.com/Articles/Adm/manage_users_permissions.htm
Только что нашел бесплатный инструмент для управления разрешениями. Он тоже может быть полезен. Проверьте ссылку
http://www.idera.com/Products/Free-Tools/SQL-permissions/
UPDATE:
Если вы хотите, чтобы БД была доступна только для чтения любому пользователю:
ALTER DATABASE database-name SET READ_ONLY
или читайте здесь для дополнительной информации
http://www.sqlservercurry.com/2009/03/set-database-to-read-only-mode-using.html
Если вы хотите получить доступ к базе данных в режиме только для чтения, вы можете создать пользователя для базы данных и включить права «ЧИТАТЬ» и отключить права «ЗАПИСЬ»
, вы можете увидеть пользователей в разделе база данных в sqlserver выберите это, и если вы хотите, вы можете создать нового пользователя, иначе вы можете установить права в свойствах
Также см.
Измените настройки безопасности для используемой учетной записи на сервере SQL.
Например, только db_datareader.