Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Perl DBI ohne Zugriff auf die Datenbank

Leider das eigentliche quote() Verhalten ist nicht immer eine tragbare Eigenschaft, also wird jeder Fahrer es anders machen. Wenn Sie sich nicht mit einem Treiber verbinden, wissen Sie nicht, welches Zitierformat Sie in der Praxis verwenden sollen. (Es gibt ein Modul, das dies ohne Verbindung tun könnte, DBIx::Abstract , ist aber nicht besonders aktuell.).

Das quote() -Methode wird tatsächlich von der entsprechenden Treiberklasse in DBD::* implementiert Namensraum. Du vielleicht Versuchen Sie, den benötigten Treiber zu laden und rufen Sie die Funktion direkt auf (siehe http://search.cpan.org/~timb/DBI-1.616/lib/DBI/DBD.pm#Writing_DBD::Driver::db::quote ), aber das fühlt sich schmuddelig an.

Ich würde trotzdem einen DBI machen Verbindung, und sei es nur, damit Sie das richtige Zitatformat erhalten. Sie müssen ihm eigentlich keine Anweisungen schicken, aber dann wissen Sie, dass das Zitierformat für die Datenbank, die Sie verwenden werden, korrekt ist.