Delphi-PRAXiS
Seite 2 von 6     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Connection zu SQL Server Express über lokales Netzwerk..Wie? (https://www.delphipraxis.net/66063-connection-zu-sql-server-express-ueber-lokales-netzwerk-wie.html)

torud 25. Mär 2006 19:37

Re: Connection zu SQL Server Express über lokales Netzwerk..
 
Hallo Ihr 2!

Also es ist so, dass ich lokal den Server laufen lasse und mich dann auch lokal mit einer Client-Testsoftware auf den Server connecten kann.

Weiterhin ist auch so, dass ich auf anderen Clients, auf denen ich mal die udl ausgeführt habe, den Server im Netzwerk sofort sehe, aber ein Verbindungstest scheitert.

Ich habe am Server selbst nichts weiter zum konfigurieren gefunden. Nur das man dort grundsätzlich einstellen kann, ob man den Server im Netzwerk zu Verfügung stellen will oder nicht. Und wenn man das bejaht, dann kann man noch wählen, ob man nur über TCP/IP oder Nur Named Pipes oder beides zusammen zulassen will. Ich entscheid mich für letzteres.

Also habe ich "nur" das Problem, welches im ersten Posting beschrieben wurde. Ich kann mich nicht von anderen Clients aus auf den Server über lokales Netzwerk verbinden und Daten abrufen.

torud 27. Mär 2006 09:36

Re: Connection zu SQL Server Express über lokales Netzwerk..
 
Zitat:

Zitat von mikhal
Der SQL Server 2005 Express erwartet (zumindest bei meinen Installationen) immer als Servernamen den Namen des Servers und anschließend mit einem Backslash getrennt den Namen "SQLEXPRESS", also: "MeinServer\SQLEXPRESS" damit funktioniert es dann mit ADO und dem "Microsoft OLE DB Provider for SQL Server".

Jo, also damit kann ich zumindest eine Connection zum Server herstellen. Nun die frage ich mich nur noch, wie ich die Datenbank auswählen kann, damit ich mit den darin befindlichen Tabellen arbeiten kann. Ist sicher nur was einfaches, aber da ich so noch nicht vorgegangen bin, würde ich mich auch hier über eine Antwort freuen.

mikhal 27. Mär 2006 09:46

Re: Connection zu SQL Server Express über lokales Netzwerk..
 
Mit <Servername>\<Instanz> stellst du bei SQL Server 2005 die Verbindung zu Server und der gewünschten Instanz her. Um die Datenbank anzusprechen, gibst du den Datenbanknamen im Parameter "Initial Catolog" an.

Grüße
Mikhal

torud 27. Mär 2006 09:48

Re: Connection zu SQL Server Express über lokales Netzwerk..
 
Danke für die Antwort. Kannst Du mir noch sagem, wo ich den Parameter Initial Catalog angeben kann? Sicher nicht im ConnectionString, oder genau da? Ich probiers mal...

mikhal 27. Mär 2006 09:53

Re: Connection zu SQL Server Express über lokales Netzwerk..
 
Genau im ConnectionString: alzaimar hat doch bereits einen kompletten ConnectionString gepostet und dort steht auch:


Zitat:

Zitat von alzaimar
Provider=MSDataShape? Also ich verwende einfach den SQLOLEDB Provider für SQL-Server

Delphi-Quellcode:
'Provider=SQLOLEDB.1;Password=<myPassword>;'+
'Persist Security Info=True;User ID=&lt;MyUser&gt;;'+
'Initial Catalog=&lt;MyDatabaseName&gt;;'+
'Data Source=&lt;MyServerComputerName&gt;;'+
'Use Procedure for Prepare=1;Auto Translate=True;'+
'Packet Size=4096;Workstation ID=&lt;MyWorkstationName&gt;;'+
'Use Encryption for Data=False;Tag with column collation when possible=False';
Beachte, das Du Username, Password, Server-Computernamen und den Datenbanknamen noch einsetzen musst.

Grüße
Mikhal

torud 27. Mär 2006 10:06

Re: Connection zu SQL Server Express über lokales Netzwerk..
 
Also damit gehts wieder NUR lokal! Ich kann dann zwar auf die DB und die Tabellen zugreifen, aber leider eben nur lokal! Wenn ich es auf einem Client ausprobiere, erhalte die Fehlermeldung:

[DBNMPNTW] Der angegebene SQL Server wurde nicht gefunden.

mikhal 27. Mär 2006 10:08

Re: Connection zu SQL Server Express über lokales Netzwerk..
 
Wie sieht dein dein ConnectionString konkret aus?

Grüße
Mikhal

torud 27. Mär 2006 10:13

Re: Connection zu SQL Server Express über lokales Netzwerk..
 
CString:=InputBox('ConnectionString','','Provider= SQLOLEDB.1;Password=Pass;'+
'Persist Security Info=True;User ID=User;'+
'Initial Catalog=Tennis;'+
'Data Source=pcsoy01\sqlexpress;'+
'Use Procedure for Prepare=1;Auto Translate=True;'+
'Packet Size=4096;Workstation ID=pcsoy01;'+
'Use Encryption for Data=False;Tag with column collation when possible=False;');

Die Inputbox habe jetzt nur eingebaut, um nicht jedes mal neu compilieren zu müssen.

Fakt ist, dass eine Verbindung vom Client zum Server mittels Provider=ADsDSOObject; funktionierte.

mikhal 27. Mär 2006 10:23

Re: Connection zu SQL Server Express über lokales Netzwerk..
 
Workstation ID sollte eigentlich der Name des Clients sein... Oder liege ich da völlig falsch?

Grüße
Mikhal

[edit]Ergänzung: Laut Microsoft ist Workstation ID der Name des lokalen Computers[/edit]

torud 27. Mär 2006 10:33

Re: Connection zu SQL Server Express über lokales Netzwerk..
 
Ja, damit hast Du völlig recht. Ich habe da jetzt mal den ComputerNamen eingegeben. Die Fehlermeldung bleibt leider die gleiche. Hast Du noch eine Idee?

Damit konnte ich mich zumindest zum Server verbinden. Der Inhalt stammt aus eine UDL-Datei.

[oledb]
; Everything after this line is an OLE DB initstring
Provider=ADsDSOObject;Password=Pass;User ID=User;Encrypt Password=False;Data Source=PCSoy01\SQLEXPRESS;Location=Tennis;Mode=Rea d;Bind Flags=0;ADSI Flag=-2147483648


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:21 Uhr.
Seite 2 von 6     12 34     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz