mysql - 如何使用 perl dbi 和 mysql 压缩数据

标签 mysql perl

我正在使用 perl dbi 连接远程提取数据。如果可能的话,我希望压缩数据。 有没有办法使用 Perl dbi for mysql 通过网络进行文件压缩?

这是我获取数据的片段:

     my $sth = $dbh->prepare("SELECT UUID(), '$node', 1, 2, 3, 4, vts FROM $tblist");
     $sth->execute();
     while (my($uid, $hostnm,$1,$2,$3,$upd,$vts) = $sth->fetchrow_array() ) { 
       print $gzip_fh "rec^A$uid^Ehost^A$hostnm^E1^A$1^E2^A$2^E3^A$3^E4^A$upd^Evts^A$vts^D";
     }
     $sth->finish;

最佳答案

最好的选择是使用 prepared statements ;这样,一旦编译了语句,您只需在每次需要运行查询时通过网络发送参数即可。

这里的示例展示了如何执行简单的准备,如果您要一遍又一遍地使用相同的查询,您应该保留您的 $sth ,您可以继续调用 $ sth->execute() 使用新变量。这减少了网络遍历的原因是因为您每次运行 $sth->execute($var) 时都不会发送查询,而只是传递准备好的 ID语句以及进入 ? 占位符的变量。

$sth = $dbh->prepare("select * from table where column=?");
$sth->execute($var);

关于mysql - 如何使用 perl dbi 和 mysql 压缩数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5480882/

相关文章:

php - 使用 php nusoap 下载 mysql 表

MYSQL DATE_ADD 间隔作为变量或来自另一列

mysql - VPS 的最佳 my.cnf 配置是什么

c - 如何从c程序读取输入到perl程序

php - Perl 正则表达式查找和替换 php 多行注释

java - 如何在 Perl 中简单地输出二进制文件并从 Android (Java) 读取它?

php - 无法检索我的 php mysql 表单的值

mysql - mysql中元素的总和

perl - 有没有办法用 PAR 或 PerlApp 打包我的单元测试?

perl - 当发送到包含子级的 perl 脚本时,SIGINT (^C) 会发生什么?