-
БД Access создается в программе (код взяла в инете). Вроде всё работает, но появилась необходимость добавить запрос на ввод имени пользователя и пароля (чтобы в зависимости от имени делать доступными разные пункты меню). Не получается добавить пользователя (Create user...) ни в программе (недопустимый синтаксис SQL - ожидается пароль), ни открыв через access БД (через ACCESS выдается "ошибка синтаксиса в инструкции CREATE TABLE...).
Помогите, пожалуйста, добавить пользователя программно.
-
> чтобы в зависимости от имени делать доступными разные пункты меню для доступности пунктом меню юзеров с паролями вводить не нужно... эти юзеры и пароли для безопасности. пока не разберёшься хорошо с аксессом не трогай их. а для меню введи просто табличку с именами и списком доступности/недоступности пункта меню да и все.
> недопустимый синтаксис SQL - ожидается пароль ну сколько можно очевидные вещи писать... раз пишет ошибка синтаксиса, значит ошибка синтаксиса, проверь запрос, сравни с описанием в справке... оно даже пишет что не так - "ожидается пароль", ну так дай в запросе пароль!
правда это тебе не поможет, как только это решишь вылезет другая ошибка об отсутствии системной базы, как с этой разберёшься, про группы и разрешения... не помню уже точно чего она там требует. не простое это дело вообще, делать программно настройку безопасности.
-
> sniknik © (15.10.08 00:59) [1] > а для меню введи просто табличку с именами и списком доступности/недоступности пункта меню да и все.
Этот вариант я рассматривала как возможный, но как-то некрасиво получится... У меня в MS SQL в клиентском приложении пользователь-администратор сам может создавать юзеров программно, и проблем там не было...
> оно даже пишет что не так - "ожидается пароль", ну так дай > в запросе пароль! Из справки: CREATE USER пользователь пароль личный_код [, пользователь пароль личный_код, …] Пробовала несколько вариантов: CREATE USER TEST 1 CREATE USER "TEST" "1" CREATE USER TEST PASSWORD 1 CREATE USER "TEST" PASSWORD "1" CREATE USER TEST SET PASSWORD 1 CREATE USER "TEST" SET PASSWORD "1" Не получается...
> правда это тебе не поможет, как только это решишь вылезет > другая ошибка об отсутствии системной базы, как с этой разберёшься, > про группы и разрешения... >
Читала в Интернете, что у народа проблемы с системной базой... и решений не нашла. Может, плохо искала. Но хочется чтобы при запуске программы спрашивалось имя пользователя и пароль, и далее в зависимости от этой информации появлялись разные возможности в программе. И "самодельщины" не хочется...
-
> Не получается... такой ошибки не бывает. обманываешь. не люблю тех кто обманывает.
> Читала в Интернете, что у народа проблемы с системной базой... и решений не нашла. "не читай советских газет", читай хелп. для народа читающего его ни подключение ни создание системной базы не проблема.
> И "самодельщины" не хочется... т.е. хочешь в стандартную безопасность встроить инфу о своём меню, и походя эту безопасность уничтожить? (хотя... будем честными, не такая уж она и надёжная у аксесса.)
-
> И "самодельщины" не хочется...
Я еще одного не понял, а как, в вашем случае, системные для СУБД дела по безопасности должны соотноситься с пользовательским интерфейсом ? На мой взгляд - никак.
-
-
> Jeer © (15.10.08 11:19) [4]
В клиентских приложениях (MS SQL) я обычно создавала роли, и пользователь с правами администратора сам создавал юзеров... И в зависимости от ролей пользователям доступны разные возможности.
-
А что заставило отказаться от MS SQL - когда сам МС это рекомендует?
-
> Anatoly Podgoretsky © (15.10.08 12:14) [7]
Не хочется "из пушки по воробьям". Это проект для мааааааааааленькой компании.
-
> Раиса (15.10.2008 12:18:08) [8]
Это неверные выводы, вот использование Акцесс это больше на пушку похоже и столько борьбы возможно придется выдержать. А тут поставил MS SQL на компьютер пользователя и наслаждаешься, кстати многие приложения ставят его не заметно, возможно что он уже стоит. Понадобилось сделать сетевую работу, так только строку подключения изменить достаточно.
Дополнительные плюсы - нет таких ограничений на размер базы как в Акцесс, поэтому база может быть крупней.
-
Anatoly Podgoretsky © (15.10.08 12:32) [9] Какую из бесплатных версий (официально бесплатных) Вы может посоветовать и где ее скачать?
-
> Анна (15.10.2008 12:38:10) [10]
Не знаю, посколько зависит от задачи, но это или MSDE (SQL 2000) или MS SQL Server Express (SQL 2005). Первый проще ставить, а второй больше имеет возможностей, плюс к нему есть ГУИ (Management Studio), BOL общий для всех и на двух языках, для 2005. Если ставить самостоятельно, а не конечным пользователем, то MS SQL Server Express + Management Studio + BOL на двух языках, он интегрируется в единую систему. Для Express ограничения ниже, чем для MSDE - размер базы 4 гб, нет ограничения на количество одновременных батчей, зато ограничение на размер памяти 1 гб. Подробности на сайте Микрософт. Я бы поставил Express, а не MSDE Кстати если ставить Visual Web Developer (ASP.NET), то он устанавливает MS SQL Server Express локально, а это еще один плюс в пользу MS SQL Server Express
-
> Анна (15.10.2008 12:38:10) [10]
Забыл ответить откуда все это скачивать. Идешь на msdn2.microsoft.com и там поиск по приведеным ключевым словам. Кроме скачивания трех выше приведеных продуктов, возможно стоит скачать и обновления к ним, но можно через Windows Update/Automatic Update.
|