ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18Nach der Aktualisierung von JMP 17 auf JMP 18 funktionierte meine ODBC-Verbindung nicht mehr. In JMP 17 wurde sie für verschiedene SQL-Abfragen verwendet, die in Open Database() und New SQL Query() eingebettet waren und Daten aus Google BigQuery bezogen. Je nachdem, wie ich die Verbindung herstelle, erhalte ich leicht unterschiedliche Fehlermeldungen:
Open Database(), Fehlermeldung aus dem Protokoll:

Neue SQL-Abfrage():
Windows-Benutzer-ID und -Passwort funktionieren in diesem Fenster nicht.

Erstellen Sie eine Datenbankverbindung über > Datei > Datenbank öffnen > Neue Verbindung > Anmelden:

Ich habe auch einen neuen DSN von Grund auf neu erstellt, was ebenfalls nicht funktionierte. ODBC ist nicht die neueste Version, da unsere IT die verwendbaren Versionen aufgrund vermuteter Fehler einschränkt. Ist es falsch anzunehmen, dass die ODBC-Verbindung, wenn sie in JMP 17 funktionierte, auch in JMP 18 funktionieren sollte?
DatenzugriffBetreff: ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18Sie haben nicht Unrecht.
Welche Versionen von JMP 17 und JMP 18 verwenden Sie konkret?
Dies ist ein Fehler. Wenn Sie den technischen Support kontaktieren, können wir das Problem leichter beheben.
Da ich an der Kompilierung des libcurl-Updates aus dem Quellcode beteiligt war, bin ich mir ziemlich sicher, dass die Build-Time-Befehle nicht geändert wurden. Ich werde die Curl-Änderungslisten überprüfen müssen, um festzustellen, ob die Standard-Build-Optionen geändert wurden.
Betreff: ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18Können Sie eine Verbindung mit dem Windows ODBC-Manager herstellen?
Was Sie im Screenshot sehen, ist der vom Treiber bereitgestellte Autorisierungsdialog.
Betreff: ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18@Paul_Nelson , danke. Die JMP-Versionen sind 17.2.0 und 18.2.0 und laufen unter Windows 11 Enterprise. Ich habe den technischen Support kontaktiert und diese Frage mit der Fallnummer TS-00201379 aktualisiert.
@bryan_boone , ja, ich kann eine Verbindung mit dem ODBC-Manager herstellen (Screenshot unten). Wie bereits erwähnt, funktioniert die Verbindung unter JMP 17 wie erwartet, unter JMP 18 jedoch nicht.
Testen der Verbindung:

Aktualisierungstoken nach der Anmeldung:

Betreff: ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18@Paul_Nelson Dies ist nicht JMPs libcurl, sondern die im ODBC-Treiber.
Die Fehlermeldung kommt vom Treiber, nicht von JMP.
Verbindungen in JMP 17 sollten in JMP 18 funktionieren.
Was JMP 18 im Gegensatz zu JMP 17 tut, ist die Verwendung der Verbindungszeichenfolge der ursprünglichen Verbindung, um weitere Verbindungen herzustellen (oder diese bei Bedarf zu trennen und wiederherzustellen). Wenn ein Treiber keine vollständige Verbindungszeichenfolge (gemäß Spezifikation) zurückgibt, schlagen nachfolgende Verbindungen fehl. Dies könnte der Fall sein, den Sie sehen.
Betreff: ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18@bryan_boone , ich bin nicht sicher, ob ich das verstehe:
- Wenn Verbindungen in JMP 17 in JMP 18 funktionieren sollten, warum sehe ich dann etwas anderes?
- Ich habe einen neuen DSN von Grund auf neu erstellt und konfiguriert und versucht, JMP über „Datenbankverbindung erstellen“ > „Datei“ > „Datenbank öffnen“ > „Neue Verbindung“ > „Anmelden“ mit Google BigQuery zu verbinden. Das hat nicht funktioniert. Ich habe diesen Weg seit JMP 14 oft gewählt, und dieser Ansatz schlägt erst jetzt in JMP 18 fehl. Warum?
Welche nächsten Schritte empfehlen Sie mir? Beispielsweise eine Versionserhöhung des ODBC-Treibers erzwingen?
Betreff: ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18@bryan_boone @Paul_Nelson @Dahlia_Watkins , Upgrade auf den neuesten Google BigQuery-Treiber 3.1.2.1004 . Keine Änderung.
Nachfolgend einige Screenshots zur Dokumentation:
- JMP 17 links vs. JMP 18 rechts
- Beide wurden mit unserem internen Add-In „View Opener“ getestet, das das Abrufen von Daten aus Google BigQuery über „New SQL Query()“ von JSL erleichtert.
- In der Mitte der Nachweis des ODBC-Treiber-Updates
Ich verstehe nicht, was für die Datenbankanmeldung in JMP 18 erforderlich ist? Firmeninterne Benutzeranmeldeinformationen reichen offensichtlich nicht aus. Was könnte es sonst noch wollen?

Wenn ich auf „ Datenquelle ändern… > Neue Verbindung > Maschinendatenquelle > meinen Benutzer-DSN auswählen > mit OK bestätigen “ klicke, erhalte ich die folgende JMP-Warnung.

Betreff: ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18Ich habe dieses Setup hier ausgeführt.
Der Treiber ist nicht mit der SQLDriverConnect-Funktion in der ODBC-Spezifikation kompatibel.
Insbesondere wird bei erfolgreicher Verbindung keine vollständige Verbindungszeichenfolge zurückgegeben.
Ich habe mit dem technischen Support zusammengearbeitet und es gibt eine Lösung mit 18, die Datenkonnektoren verwendet (um den nicht kompatiblen Teil des Treibers zu umgehen) und eine frühere Version des Treibers (um den Libcurl-Fehler des Treibers zu umgehen).
Sie können sich an sie wenden, um alle Einzelheiten zu erfahren.
Betreff: ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18Vielen Dank, @bryan_boone . Ich habe auf eine niedrigere Version des Simba ODBC-Treibers für Google BigQuery (3.0.2.1005, Link zum Treiberarchiv ) heruntergestuft und kann nun JMP 18 verwenden, um eine Verbindung zu unserem Google BigQuery-Data Warehouse herzustellen. Ich bin sehr dankbar für die Hilfe von @Dahlia_Watkins bei der Identifizierung und dem Hinweis auf diese Lösung.
Bevor ich dieses Problem schließe und diese Antwort als Lösung akzeptiere, gibt es außer dem hier bereits Erwähnten noch etwas, worauf Simba/Google über einen Supportfall aufmerksam gemacht werden sollte oder kann?
Betreff: ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18Ein Downgrade des Treibers hätte das von Ihnen festgestellte Libcurl-Problem beeinflusst.
Bei SQLDriverConnect enthielt die vollständige Verbindungszeichenfolge nur den DSN, z. B. DSN=MyBigQuery (wobei MyBigQuery im ODBC-Manager definiert wurde). Die ODBC-Spezifikation besagt, dass es sich um eine vollständige Verbindungszeichenfolge handeln sollte. Das bedeutet, dass die zurückgegebene Verbindungszeichenfolge alle Informationen enthalten sollte, damit Sie diese (und nur diese) verwenden und eine weitere Verbindung herstellen können.
Schließlich fehlt in der vollständigen Verbindungszeichenfolge der Katalog, mit dem Sie Ihre Verbindung konfiguriert haben (wie in CATALOG=). Sie können dies beispielsweise in Ihrer Windows-Registrierung sehen, wo die Treiberverbindungseinstellungen zum Zeitpunkt der Konfiguration gespeichert werden.
Betreff: ODBC-Verbindung funktioniert nicht nach der Erhöhung von JMP 17 auf JMP 18Ich habe eine JMP-Notiz erstellt, die Benutzern hilft, die mit dieser JMP-Notiz 872545 zu tun haben.
CC: @Ressel