Perl DBI无需访问数据库

Ala*_*ing 5 mysql sql database perl dbi

我正在INSERT为一个尚不存在的数据库创建一组SQL 语句,我将它们保存到文件中.

如何在不访问特定数据库的情况下使用Perl强大的DBI模块来创建这些INSERT语句.特别是,看起来使用该$dbh->quote()函数需要我实例化$dbh与数据库的连接.

Stu*_*att 4

不幸的是,实际quote()行为并不总是可移植的特征,因此每个驱动程序都会以不同的方式进行操作。除非您连接到驱动程序,否则您不知道在实践中使用哪种引用格式。(有一个模块可以在没有连接的情况下执行此操作,DBIx::Abstract但它不是特别流行。)。

quote()方法实际上是由命名空间中相应的驱动程序类实现的DBD::*。您可以尝试加载所需的驱动程序并直接调用该函数(请参阅http://search.cpan.org/~timb/DBI-1.616/lib/DBI/DBD.pm#Writing_DBD::Driver::db::引用)但这感觉很肮脏。

我仍然会建立DBI联系,只要你能得到正确的引用格式就好了。您实际上不需要向其发送任何语句,但您确实知道引用格式对于您将使用的数据库来说是正确的。