Suche MySQL-Schnittstelle für Zugriff auf mehrere DBs gleichzeitig
Verfasst: Freitag 31. Mai 2024, 14:49
Hallo,
könnt ihr mir ein Python-Paket bzw. eine Schnittstelle empfehlen, mit der der Zugriff auf mehrere Datenbanken (bzw. genauer: table_schema) gleichzeitig möglich ist?
Direkt auf der MySQL-Konsole, aber auch bei PHP-PDO ist es möglich SQL-Kommandos auszuführen, ohne eine Datenbank (table_schema) vorauszuwählen. Der Datenbankname wird dann dem Tabellenname durch einen '.' getrennt vorangestellt. (SELECT * FROM db.table WHERE 1) Auf die Weise ist es dann auch möglich verknüpfte Abfragen über mehrere Datenbanken hinweg auszuführen. ( SELECT * FROM db1.table1 AS a WHERE a.id IN (SELECT id FROM db2.table2)) Natürlich müssen die Datenbanken auf demselben Server laufen.
Ich habe dasselbe nun mit pymysql und mysql-connector-python probiert und es scheint bei beiden nicht zu gehen. Ich muss bei beiden eine Datenbank vorauswählen und deren Name wird in den Abfragen dann automatisch dem Tabellennamen vorangestellt, was dann zu solchen Fehlermeldungen führt:
ProgrammingError: 1146 (42S02): Table 'db1.db1.table1' doesn't exist
Kennt vielleicht jemand ein Paket, mit dem das möglich ist oder hat einen Tipp, wie ich es mit den genannten doch hinbekomme?
Vielen Dank im Voraus!
könnt ihr mir ein Python-Paket bzw. eine Schnittstelle empfehlen, mit der der Zugriff auf mehrere Datenbanken (bzw. genauer: table_schema) gleichzeitig möglich ist?
Direkt auf der MySQL-Konsole, aber auch bei PHP-PDO ist es möglich SQL-Kommandos auszuführen, ohne eine Datenbank (table_schema) vorauszuwählen. Der Datenbankname wird dann dem Tabellenname durch einen '.' getrennt vorangestellt. (SELECT * FROM db.table WHERE 1) Auf die Weise ist es dann auch möglich verknüpfte Abfragen über mehrere Datenbanken hinweg auszuführen. ( SELECT * FROM db1.table1 AS a WHERE a.id IN (SELECT id FROM db2.table2)) Natürlich müssen die Datenbanken auf demselben Server laufen.
Ich habe dasselbe nun mit pymysql und mysql-connector-python probiert und es scheint bei beiden nicht zu gehen. Ich muss bei beiden eine Datenbank vorauswählen und deren Name wird in den Abfragen dann automatisch dem Tabellennamen vorangestellt, was dann zu solchen Fehlermeldungen führt:
ProgrammingError: 1146 (42S02): Table 'db1.db1.table1' doesn't exist
Kennt vielleicht jemand ein Paket, mit dem das möglich ist oder hat einen Tipp, wie ich es mit den genannten doch hinbekomme?
Vielen Dank im Voraus!