
Hallo Jürgen, On 2005-10-29 12:05, Juergen Hermann wrote:
On Sat, 29 Oct 2005 10:38:59 +0200, maillist@moevy.net wrote:
Ich habe im Web ein kleines Produktionsmanagement programmiert. Dies möchte ich nun auch nativ mit Python realisieren. Da habe ich in Foren rumgefragt und da hiese es das man das nicht mit mysql machen würde. Warum auch immer. Eine andere Antwort habe ich noch nicht bekommen.
Sofern man SQL braucht, nehme man DBAPI2. Dann kann's Dir wurscht sein, wo die Daten effektiv landen, bis auf den Installationszeitpunkt.
meiner Meinung nach ist das zu sehr vereinfacht. - Verschiedene Datenbanken verwenden unterschiedliche SQL-Dialekte, die sich subtil unterscheiden können. Die SQL-Anweisungen beim Übergang auf ein anderes Datenbanksystem zu ändern, kann fehleranfällig sein. - Verschiedene Datenbankadapter können, auch wenn sie sich prinzipiell an die DB-API halten, unterschiedliche Parameterübergabeformate verwenden (siehe http://www.python.org/peps/pep-0249.html , Abschnitt zu "paramstyle"). - Datenbankadapter können sich in den Exceptions unterscheiden, mit denen sie auf bestimmte Fehlersituationen reagieren. Theoretisch schreibt die DB-API zwar vor, wann welche Exceptions zu verwenden sind, aber mitunter verstehen die Autoren die DB-API-Dokumentation unterschiedlich. - Datenbanken unterscheiden sich in ihren Fähigkeiten. Was in einer geht, erzeugt bei einer anderen u. U. einen "NotSupportedError". - Wenn man eine bisher verwendete Datenbank im Nachhinein (z. B. aus Geschwindigkeits- oder Wartungsgründen) gegen eine andere austauschen muss, muss man normalerweise die Daten migrieren. Im Kern hast du schon Recht. Man sollte möglichst (wenn man überhaupt eine SQL-Datenbank verwenden will) Datenbankadapter nutzen, die sich an die DB-API halten. Aber daraus zu schließen, dass man bei der Verwendung einer anderen als der ursprünglich geplanten Datenbank womöglich nur die Import-Anweisung für das entsprechende Pythonmodul ändern muss, stimme ich nicht zu. :-) Viele Grüße Stefan _______________________________________________ python-de maillist - python-de@python.net http://python.net/mailman/listinfo/python-de