Отчет не может подключиться к SQL Server, если проверка подлинности Windows

Я хочу просмотреть отчет в программе Delphi 7, которая подключается к базе данных SQL. База данных может использовать аутентификацию SQL или Windows.

Если проверка подлинности SQL моя программа делает:

MyReportComponent.Connect.Server:=myServer;
MyReportComponent.Connect.UserId:=myUserId;
MyReportComponent.Connect.Password:=myPassword;
MyReportComponent.Connect.Database:=myDatabase;
MyReportComponent.Execute;

и все работает нормально.

Но если сервер использует проверку подлинности Windows, в Connect нет свойства, указывающего на это, и если я назначу идентификатор пользователя и пароль пустыми, отчет не подключается к базе данных!

Любая подсказка?

Заранее спасибо!


person Franklin Albricias    schedule 16.10.2010    source источник


Ответы (2)


Это будет зависеть от фактической базы данных, которую вы используете. Будет какой-то волшебный текст, который вы добавите в свойство ConnectionString. Для MS-SQL Server вы можете попробовать:

Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;

Если вы используете доступ OLE, как мы здесь. В мастер подключения Delphi встроено много необходимой вам информации, так что с этим стоит поиграться. Особенно в более поздних версиях Delphi, я не уверен точно, как далеко продвинулся Delphi7 (сейчас у меня нет копии, извините).

person Community    schedule 17.10.2010

При встроенной аутентификации Windows пользователь указывает свое имя пользователя и пароль при входе в Windows. Аутентифицирует Windows, а не сам пользователь или приложение, используя различные механизмы, в зависимости от конфигурации и состояния сети, такие как Kerberos, NTLM2 и т. д.

person Gennady Vanin Геннадий Вани&    schedule 17.10.2010