存档

文章标签 ‘perl’

perl DBI获取mysql中sql语句返回的字段名

2013年4月9日 5 条评论

最近用perl的dbi来处理mysql,有时候需要返回结果的字段名,但是网上查了没有结果

后来在国外的网站上查到了这个代码:

my $columns = get_columns($dbh, $table);

print @$columns;

sub get_columns {
my $dbh = shift;
my $table = shift;

#SQL statement always gauranteed to return 0 rows,
#but ALWAYS returns the column names. Basicaly a
#portable “DESC $table”
my $statement = qq{
SELECT *
FROM $table
WHERE 1 = 0
};

my $sth = $dbh->prepare($statement);
$sth->execute;

#Get the column names for the $table
return $sth->FETCH(‘NAME_lc’);
}

查了下cpan上的DBI的说明,发现了:

NAME_lc

Type: array-ref, read-only

Like /NAME but always returns lowercase names.

说明了NAME_lc是自带的一个属性。并且是只读的数组引用

DBI相关的信息太多,不一一挖掘…

参考

http://www.perlmonks.org/?node_id=52123

分类: mysql, perl, 技术 标签: ,

转:perl参数变量

2012年9月19日 没有评论

$! 根据上下文内容返回错误号或者错误串
$” 列表分隔符
$# 打印数字时默认的数字输出格式
$$ Perl解释器的进程ID
$% 当前输出通道的当前页号
$& 与上个格式匹配的字符串
$( 当前进程的组ID
$) 当前进程的有效组ID
$* 设置1表示处理多行格式.现在多以/s和/m修饰符取代之.
$, 当前输出字段分隔符
$. 上次阅读的文件的当前输入行号
$/ 当前输入记录分隔符,默认情况是新行
$: 字符设置,此后的字符串将被分开,以填充连续的字段.
$; 在仿真多维数组时使用的分隔符.
$? 返回上一个外部命令的状态
$@ Perl解释器从eval语句返回的错误消息
$[ 数组中第一个元素的索引号
$\ 当前输出记录的分隔符

阅读全文…

分类: perl 标签:

perl中更新CPAN

2012年9月14日 没有评论

最近win下用了下perl,后来用cpan安装模块的时候,提示要更新cpan
就按照操作了下
cpan install CPAN (注意大小写)
cpan reload
这样就更新了cpan的模块列表了

对于linux系统中,运行

shell>perl -MCPAN -e shell

或者是cpan,进入cpan的shell

然后运行

cpan>o conf urllist unshift http://mirrors.163.com/cpan/ 添加163的cpan的源

然后运行

cpan>o conf commit 保存设置

 

分类: perl 标签:

perl中使用eventlog模块来操作windows事件日志

2012年9月12日 3 条评论

最近因为涉及到一些windows下的服务器的处理,到要处理windows的时间日志,所以网上查了下,是使用win32::eventlog模块

模块说明都是e问的,为了方便,大概翻译了下:

NAME
Win32::EventLog – Process Win32 Event Logs from Perl

语法
use Win32::EventLog
$handle=Win32::EventLog->new(“Application”);

描述

这个模块实现了从Win32 API 来访问和操作Win32事件日志  大部分的功能可用。
事件日志访问函数被分开成,一部分是一个事件日志对象和他的相关的方法,另外是其他的关于事件日志的任务(例如添加一个事件日志记录)。

阅读全文…

分类: perl 标签:

perl中使用say

2012年9月10日 没有评论

看到网上说perl中使用say更快捷,就用了下,结果提示:Can’t locate object method “say” via package。

网上看了是因为这个特性没有使用。

按照以下方法:

在perl的开头加上这么一行:

use feature ‘say’;

 

结果可以了。

其实,运行

perldoc feature

你可以看到更多的特性

 

参考了:http://www.ifunsion.com/archives/1693

分类: perl 标签:

生成台风路径googleearth的kml文件的perl脚本

2012年8月29日 1 条评论

因为最近台风频发,所以也关注下,本人也是很喜欢玩google earth 的,google earth是个不错的软件.

台风预报一般都有经纬度,就想到能不能在google earth中显示台风轨迹呢?

网上google了未果.因为最近也在学习perl,就想到,能不能自己去写一个呢?

说起来了就动手了,涉及的东西还真的蛮多的,最重要的部分就是内容处理,需要用到正则表达式,而正则表达式这个东西就不是一般的蛋疼啊。

阅读全文…

perl发送邮件

2012年8月28日 没有评论

由于工作需要使用perl写脚本,涉及到发送邮件,网上找了几个例子,总是有些不对,要么标题有问题,要么正文有问题,要么邮件主题有问题,经过测试和查看perldoc,发现应该如下发送就是正确的。

阅读全文…

分类: perl 标签: , , ,

Windows下active perl 编译perl为exe

2012年7月16日 没有评论

因为perlwindows下使用的话都要按照active perl环境,所以想把perl脚本编译成exe文件,商业的工具有需要付费注册的perl2exe等,但是这个明显不符合自由开放的精神。所以自己在网上查找了下其他方法。

网上讲到的基本上是par-packer这个模块,但是active perl的ppm里面没有这个模块,所以要想其他办法。

阅读全文…

分类: perl 标签: , ,