![]() |
Datenbank: MSSQL • Version: 12 • Zugriff über: FIREDAC
Zugriff auf MSSQL via FIREDAC unter LINUX
Liste der Anhänge anzeigen (Anzahl: 1)
ich habe eine kleine FMX-Testanwendung um auf eine Datenbank auf einem MSSQL Server unter Windows zu zugreifen.
Funktioniert alles wie geplant . Die Anwendung habe ich dann für LINUX compiliert und gestartet. Auf der LINUX Seite bekomme ich jetzt folgende Fehlermeldung Libodbc.so nicht gefunden a) was ist der offizielle Weg dieses Shared Object zu bekommen, ist dies nicht Bestandteil von FD / Delphi ? b) wo kopiere ich dieses SO am besten hin damit meine Anwendung funktioniert ? |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
Hallo,
vielleicht bringt dich das weiter? ![]() VG Steku |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
Liste der Anhänge anzeigen (Anzahl: 1)
der link war sehr hilfreich, gleich sqlserverdriver.tar nach Anleitung installiert
jetzt bekomme ich diesen Fehler :-( was muss ich noch installieren ? |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
Hallo,
schon mal Gegoogelt nach Microsoft mssql odbc Linux? Ergebnis ![]() |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
nach der Installation ist die gesuchte Datei zwar auf meinem System, leider bekomme immer noch die Fehlermeldung "..... file not found"
kann ich prüfen ob die Installation erfolgreich war ? stimmt was an den Zugriffsrechten nicht ? |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
Hallo,
Zitat:
und heißt auch genauso? Die Prüfung, ob das Setup erfolgreich war, machst du ja gerade, geht aber schief ... |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
Liste der Anhänge anzeigen (Anzahl: 1)
hier der Beleg, Datei wäre da im screen dump,
wie weiter ..... |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
Hallo,
*Hände heb* Vielleicht sind es ja fehlende Rechte, aber bei Linux habe ich gar keine Ahnung. Oder das hier: ![]() Must dich wohl durchwursteln über Google "delphi linux libmsodbcsql-11.0.so.2270.0 not found" |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
Die bloße Existenz der Datei hilft nicht viel, wenn die User spezfifischen Suchpfade nicht stimmen.
Dann kommen die Zugriffsrechte für Nutzer, Gruppe, Alle (Ich weiß nichts über die Treiberarchitektur, wenn es irgendwie Richtung COM Server geht, ist es ggF. sogar ein eigener User) Anhand des Links von hoika und Deiner Versionsangaben: Warum soll es ODBC 11 sein? (alt) Wieso nicht 13 oder 13.1? (neu und hoffentlich bessere Installer Routinen) Annahme: Auch ein neuer 13 Treiber kann einen 12er Server ansprechen. Wenn schon Linux, warum MS SQL "hinten dran"? Apropos Version, welches Linux ist es und welche Version? Die "Bitness"-Frage thematisiert ja schon die Fehlermeldung, aber: 32/64 Bit "EXE" => entsprechend 32/64bit ODBC Treiber installiert? Was sagt bspw. die Groups und Shadow Datei nach der Installation? Ist etwas MS mäßiges hinzugekommen? Als welcher User hast Du installiert? Welches Verfahren, Schritte, Repository hast Du verwendet? "Bestandteil von Delphi" ist es sicher nicht, ein ODBC Treiber gehört auch in der Windows Welt nicht zu Delphi. Was nicht bedeutet, dass Delphi je nach Edition nicht native Zugriffsmöglichkeiten (ohne ODBC) bietet. Wie weit das für Linux gilt, weiß ich allerdings nicht. |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
Anmerkungen
Warum MSSQL : die App kann auch unter Windows verwendet werden (und dort funktioniert auch alles) und dort haben wir einen MSSQL Server die Basis-Idee : Delphi Cross compiling und Null weiterer Aufwand :-( ....... LINUX : UBUNTU 18.04 |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
wie lautet der Korrekte Verbindungsstring um auf MSSQL via Firdac und unter Linux zugreifen zu können ?
Delphi-Quellcode:
with aConnection do
begin Close; {$IFDEF MSWINDOWS} // create temporary connection definition with Params do begin Clear; Add('DriverID=MSSQL'); Add('Server=' + servername); Add('OSAuthent=Yes'); end; {$ENDIF} {$IFDEF LINUX} // create temporary connection definition // DriverID=ODBC Driver 17 for SQL with Params do begin Clear; Add('DriverID=ODBC'); Add('Server=' + servername); Add('OSAuthent=Yes'); end; {$ENDIF} Open; end; meine Lösung funktioniert nicht (bzw. halt nur für Windows :-( ..... ( ![]() |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
|
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
Liste der Anhänge anzeigen (Anzahl: 1)
eine komplett Lauffähige DEMO app gibt es hier :
![]() wer kann diese App unter Linux kompilieren und eine Verbindung zu einem MSSQL Server Aufbauen ? (dann kann ich schon mal zwischen OBDC Setup Problemen auf der LINUX Seite und Code Problemen auf der Delphi Seite unterscheiden ) (wer Fehler im Delphi code posted -> mache dann einen Update auf github , vielleicht haben ja auch andere Programmierer dieses Problem ) |
AW: Zugriff auf MSSQL via FIREDAC unter LINUX
Da ich gestern auch mit einem Zugriff von Linux auf einem unter Windows laufenden MS SQL Server zu tun hatte, ein Hinweis von mir dazu - leider beantwortet er nicht ganz deine Frage, da du ja explizit nach FireDAC gefragt hast, aber vielleicht hilft es ja sonst jemandem: Ich nutze seit einiger Zeit UniDAC und damit geht es völlig problemlos und ohne, dass man unter Linux noch irgendwelche anderen Bibliotheken installieren muss. Die Hürden waren bei mir dann nur, dass von Linux aus über TCP/IP auf den Server zugegriffen wird und ich den falschen Port angegeben hatte (war nicht der Standard-Port 1433, sondern aus irgendeinem Grund steht der auf 1434).
Also, falls UniDAC oder SDAC von Devart trotz der Kosten eine Alternative ist, bekäme man damit die Verbindung jedenfalls problemlos ans Laufen. Getestet hatte ich unter Ubuntu 18.10 (ja, ich weiß, ist End-of-Life, hat es mir gestern auch gesagt ;-) ). |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:00 Uhr. |
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