LabVIEWForum.de
MySQL ohne ODBC - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenkommunikation (/Forum-Datenkommunikation)
+---- Thema: MySQL ohne ODBC (/Thread-MySQL-ohne-ODBC)



MySQL ohne ODBC - MicroScoop - 28.09.2021 09:24

Hallo zusammen,

folgende Thematik:
Ich habe ein SPC-Tool generiert, welches als .exe mehrfach in anderen Abteilungen verwendet wird. Dieses Tool liest in der internen Datenbank Messdaten ein und erstellt Berichte.
Auf den Anwendungs-PCs fehlen allerdings sämtliche ODBC-Verbindungen und Treiber.

Die Treiber konnte ich bereits mit in die LabView-Setup packen.
Die ODBC-Verbindungen erstellen kann ich allerdings nicht per Fernsteuerung.

Nun die Frage:
Lässt sich in LV auch eine DB-Verbindung zu einer MySQL DB aufbauen ohne vorher die ODBC-Verbindung anzulegen?
(ich verwende übrigens das Database Toolkit von LV)

Die Notlösung der Erstellung einer Batch-Datei welche die Verbindung in der Registery anlegt, wurde schon verworfen. Da sagt unsere IT eindeutig NEIN.


RE: MySQL ohne ODBC - th13 - 28.09.2021 12:29

Du brauchst die ODBC-Verbindung nicht extra anlegen, wenn du an "DB Tools Open Connection"
• direkt den ODBC-ConnectionString
• oder "filedsn=<Pfad zu dns-Datei>" übergibst.

Letztere Variante benutzen wir, um auf verschiedenen Rechnern einfach die Verbindung zur Datenbank zu konfigurieren.

Edit: Link ersetzt


RE: MySQL ohne ODBC - MicroScoop - 30.09.2021 07:05

Hey th13,

danke für die schnelle Antwort und sorry für die verzögerte Rückmeldung. Auf Arbeit ist die Hölle losGlare

Zitat:• direkt den ODBC-ConnectionString
hier bekomme ich folgende Fehlermeldung:
Fehler -2147467259 bei NI_Database_API.lvlib: DB Tools Open Connec (String).vi->rtauftraege_minitpx.vi
Mögliche Ursachen:
ADO Error: 0x80004005
Exception occured in Microsoft OLE DB Provider for ODBC Drivers: [Microsoft][ODBC Driver Manager] Der Datenquellenname wurde nicht gefunden, und es wurde kein Standardtreiber angegeben in NI_Database_API.lvlib: DB Tools Open Connec (String).vi->rtauftraege_minitpx.vi



RE: MySQL ohne ODBC - MicroScoop - 30.09.2021 08:15

(30.09.2021 07:05 )MicroScoop schrieb:  hier bekomme ich folgende Fehlermeldung:
Fehler -2147467259 bei NI_Database_API.lvlib: DB Tools Open Connec (String).vi->rtauftraege_minitpx.vi
Mögliche Ursachen:
ADO Error: 0x80004005
Exception occured in Microsoft OLE DB Provider for ODBC Drivers: [Microsoft][ODBC Driver Manager] Der Datenquellenname wurde nicht gefunden, und es wurde kein Standardtreiber angegeben in NI_Database_API.lvlib: DB Tools Open Connec (String).vi->rtauftraege_minitpx.vi

OK, hab den Fehler gefunden. Ich muss den aktuell verwendeten Treiber mit angeben.
Sieht dann so aus:
"Driver=myDriver;Server=myServerAddress;Database=myDataBase;Port=Portnumber;User Id=myUsername;Password=myPassword;"

Nebenbei haben wir noch eine sehr flexible Lösung gefunden, wo nicht mal zusätzliche Treiber installiert werden müssen. Und zwar unter der Verwendung des .net Frameworks.
Wenn ich zeit für eine 2. Programmversion hab, häng ich die gern noch mit an, falls jemand Interesse hat.


RE: MySQL ohne ODBC - jg - 30.09.2021 14:03

Was jetzt eigentlich, MySQL oder MS-SQL?

Laut deiner Titelbeschreibung MySQL, laut des Links von th13 und deiner Fehlermeldungen MS-SQL...

Gruß, Jens


RE: MySQL ohne ODBC - th13 - 01.10.2021 08:34

Ich habe meinen ersten Link ersetzt durch das Beispiel für MySQL auf derselben Seite. Dort gibt gibt es übrigens ConnectionStrings und Beispielcode zum Verbinden für alle üblichen Datenbanken.


RE: MySQL ohne ODBC - joerg.hampel - 04.10.2021 14:41

Es gibt übrg. auch einen rein TCP-basierten Treiber für MySQL Datenbanken, der nur die TCP Primitiven aus LabVIEW verwendet und daher auch direkt auf Real-Time-Targets lauffähig ist. Die Performance ist in den allermeisten Anwendungsfällen sehr gut.

Ich glaube die ursprüngliche Quelle ist hier: https://forums.ni.com/t5/Example-Code/Native-LabVIEW-TCP-IP-Connector-for-mySQL-Database/ta-p/3496603

Mittlerweile gibt's an verschiedenen Stellen (zB hier) auch erweiterte, verbesserte Variationen des og. Treibers.


RE: MySQL ohne ODBC - MicroScoop - 05.10.2021 13:18

(01.10.2021 08:34 )th13 schrieb:  Ich habe meinen ersten Link ersetzt durch das Beispiel für MySQL auf derselben Seite. Dort gibt gibt es übrigens ConnectionStrings und Beispielcode zum Verbinden für alle üblichen Datenbanken.

Ja ich hab mich auf der verlinkten Seite durchgeklickt. Wir wussten beide das MySQL gemeint ist Big Grin

(04.10.2021 14:41 )joerg.hampel schrieb:  Es gibt übrg. auch einen rein TCP-basierten Treiber für MySQL Datenbanken, der nur die TCP Primitiven aus LabVIEW verwendet und daher auch direkt auf Real-Time-Targets lauffähig ist. Die Performance ist in den allermeisten Anwendungsfällen sehr gut.

Ich glaube die ursprüngliche Quelle ist hier: https://forums.ni.com/t5/Example-Code/Native-LabVIEW-TCP-IP-Connector-for-mySQL-Database/ta-p/3496603

Mittlerweile gibt's an verschiedenen Stellen (zB hier) auch erweiterte, verbesserte Variationen des og. Treibers.

Das klingt sehr interessant. Vor allem da wir mittlerweile riesige Datenmengen verarbeiten. Schau ich mir direkt mal an. Danke