Несколько вещей:
Когда вы создаете связанную таблицу, просто используйте ленту для импорта и связи, а затем базу данных ODBC. Просто выберите файл DSN. Причина этого в том, что для доступа по DEFAULT будет использоваться соединение без DSN. Проще говоря, это означает, что когда вы связываете таблицы, вы можете распространять свое приложение на каждую рабочую станцию, и вам не нужно настраивать системный / машинный DSN.
Так что просто имейте в виду, что используйте файл DSN по умолчанию - как только Access создаст ссылку на SQL-сервер, такие ссылки будут без DSN, и вам не потребуется никаких настроек на каждой рабочей станции.
Что касается создания пользователей на SQL сервере? Что ж, скорее всего, в этом нет необходимости, если только вы не хотите какой-то особой безопасности для каждого пользователя. Если вы используете вход в систему через SQL, убедитесь, что во время вышеупомянутого процесса связывания вы «отметили» опцию сохранения пароля. Еще раз, поскольку по умолчанию связанные таблицы не имеют DSN, тогда каждый пользователь фактически будет использовать один и тот же пользователь SQL / пароль, и, таким образом, это будет прозрачно для каждого пользователя (им не нужно будет входить в систему).
Если вы используете проверку подлинности Windows для входа в систему с помощью SQL, то безопасность настраивается с помощью системы Windows, а не сервера SQL. В этом случае каждый пользовательский вход в Windows будет использоваться для управления (разрешения) использования SQL-сервера. Если вы не используете контроллер домена, то вы используете входы в систему с помощью SQL, и, вероятно, будет достаточно только одного входа в систему, который вы используете. Часто даже в корпоративной среде, потому что я не хочу вызывать ИТ-администраторов для каждого входа в систему и получения разрешений на сервер SQL, я все равно ЧАСТО выбираю вход в систему через SQL. Таким образом, «как только» ИТ-администраторы предоставят мне достаточно прав на SQL-сервер, я могу создавать свои собственные входы в систему или просто использовать «один и тот же» вход для всех, и, таким образом, мне не нужно тратить время на то, чтобы беспокоить ИТ-специалистов. близкие.
Несколько дополнительных заключительных моментов: не обращайте внимания на предложения использовать все виды кода ADO и VBA, строки подключения и т. Д. - они не требуются. Фактически, в большинстве случаев вы хотите ИЗБЕЖАТЬ кода ADO в своем приложении. Кроме того, oleDB обесценивается для SQL-сервера (на который, как правило, полагается ADO).
Вы ВСЕГДА хотите разместить имеющуюся у вас клиентскую программу на каждой рабочей станции. Точно так же, как вы устанавливаете Word на каждую рабочую станцию или свои бухгалтерские пакеты, теперь, когда ВЫ разрабатываете программное обеспечение, вы устанавливаете свое программное обеспечение на каждой рабочей станции, как это делалось в ИТ-индустрии за последние 30 лет. Вы, конечно, можете обмениваться данными в общей папке, но вы устанавливаете фактическое приложение (Word, Excel или, в данном случае, ВАШЕ приложение на КАЖДУЮ рабочую станцию. И вы должны скомпилировать accDB в accDE перед любым развертыванием).
Таким образом, вам действительно не нужен какой-либо специальный код при запуске для «подключения» или «связывания» с SQL-сервером, если вы развертываете для таких пользователей в той же сети. Если вы разработчик или консультант «вне офиса», то вам, вероятно, потребуется добавить код при запуске, чтобы повторно связать их с ИХ сервером sql, который, несомненно, будет отличаться от того, который вы разрабатываете вне офиса. Таким образом, потребуется некоторая возможность повторного подключения к «другому» SQL-серверу, отличному от того, на котором вы разрабатываете, если вы не можете разрабатывать на месте, или если SQL-сервер, с которым вы работаете, является «копией» или «тестом». версия используемого фактического производственного SQL-сервера.
person
Albert D. Kallal
schedule
22.02.2017