TCPIP und NamedPipes sind aktiviert, entsprechend wie sie auf dem
SQL Server aktiviert sind.
Könnte es sein, dass
ADO Probleme macht?
Ich habe jetzt mal ein Test-Programm erstellt, welches mit dem
SQL-User connecten und ein
SQL-
Query ausführen soll. Das folgende ist der einzige Code:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
with ADOConnection1
do
begin
ConnectionString := '
Provider=SQLNCLI10.1;' +
'
User ID=mein_SQL_User;' +
'
Password=mein_pw;' +
'
Integrated Security="";' +
'
Persist Security Info=True;' +
'
Initial Catalog=DatenbankName;' +
'
Data Source=SERVERNAME;' +
'
Application Name=Mein_Programm_Mame;' +
'
Initial File Name="";' +
'
Server SPN=""';
CommandTimeout := 120;
LoginPrompt := False;
end;
with ADOQuery1
do
begin
Close;
SQL.Clear;
SQL.Add('
Select * from tabelle');
open;
first;
end;
end;
Wenn ich dieses Programm kompiliere und anschließend ausführe, funktioniert das nur ohne Fehlermeldung, wenn ich es mit einem Windows-User ausführe, der auch am
MSSQL Server (immer noch die Express Version!) als Login-User eingetragen ist. Verwende ich einen dort nicht eingetragenen Windows-User, so wird mir der übliche Fehler "login failed" angezeigt und im
SQL-Server-Log steht, dass "Login failed for <Windows-User>".
Letztendlich schließe ich daraus, dass der
SQL-User von der ADOConnection überhaupt nicht verwendet wird. Was mache ich da falsch?