#!/usr/bin/perl
use 5.010;
say "-----------FreezeThaw模块------------------------";
#将复杂结构编码成可以打印的ASCII字符串,使用者可以将编码后的字符串发送到文件、DBM文件、数据库。
#use FreezeThaw qw(freeze thaw);#加载freeze()和thaw()
=pod
$c = {
'even' => [2,4,6,8],
'odd' => [1,3,5,7]
};
$obj = bless ('foo' => 'bar'), 'Example';
$msg = freeze($c,$obj);#数组和散列表必须用引用的形式传递
open(F,'>freeze')||die;
syswtite(F,$msg,length($msg));
($c,$obj) = thaw($msg);#thaw方法读取一个编码过的字符串并返回同样的标量变量列表
=cut
say "-----------Data::Dumper模块------------------------";
#转换成格式美观的perl代码,可以存储到文件中,以后可以进行eval操作
use Data::Dumper;
$c = {
even => [2,4,6,8,],
old => [1,3,5,7,]
};
#创建样例对象
$obj = bless {'foo' => 'bar'},'Example';
#$obj = bless $c,'Example';
$msg = Dumper($c,$obj);
#say $msg;
$n = eval($msg);
say $n->{'foo'};
#say $n->{'even'}[0];
say "-----------Storable模块------------------------";
use Storable;
$a = [100,200,{"name" => 'giggs'}];
eval{
store($a,'test.dat');#指向数据结构(根)的引用,文件名
};
say "error writing to file :$@" if $@;
$a = retrieve('test.dat');#完成相反的工作,给定文件名,返回数据结构的引用
say $a->[0];
say $a->[2]->{"name"};
say "-----------DBI模块--交互式sql前端----------------------";
#错误代码和错误信息$DBI::err和$DBI::errstr
use DBI;
$dbname = 'zhbd';
$user = 'zhbd';
$password = 'zhbd!@#';
$dbd = 'Pg';
my $db = "DBI:Pg:database=zhbd";
$dbh = DBI->connect($db,$user,$password) ||
die "Errot connecting $DBI::errstr";
while(1){
print "SQL> ";
$command = <STDIN>;
last unless defined($command);
last if ($command =~ /^\s*exit/);
chomp($command);
$command =~ s/;\s*$//;
$sth = $dbh->prepare($command);
if ($DBI::err) {
say STDERR "$DBI:errstr";
next;
}
$sth->execute();
if ($DBI::err) {
say STDERR "$DBI:errstr";
next;
}
if($command =~ /^\s*select/i){
my $rl_names =$sth->{NAME}; #列名数组的引用
say "-----";
while(@results = $sth->fetchrow){ #检索结果
say "@results";
say "***********************";
if ($DBI::err) {
say STDERR "$DBI:errstr";
last;
}
foreach $field_name (@$rl_names) {
printf "%10s: %s\n",$field_name,shift @results;
print "\n";
}
}
$sth->finish;
}
}
$dbh->commit;
分享到:
相关推荐
Perl是一种强大的脚本编程语言,...以上就是Perl学习笔记中涵盖的一些基础概念和操作。继续深入学习,你将能够编写更复杂的Perl脚本,解决各种实际问题。记得实践是学习编程的关键,多做练习,逐步提升你的Perl技能。
以下是对Perl学习笔记中提到的关键知识点的详细说明: 1. **标量**: 标量是Perl中最基本的变量类型,用于存储单个值,如字符串或数字。变量名前缀是美元符号“$”。例如,`$first_name = "Melanie"`定义了一个名...
Perl学习笔记中的所有脚本文件,https://blog.csdn.net/zgezi/category_10259467.html
### Perl学习笔记参考 #### Perl简介 Perl是一种高级编程语言,全称为Practical Extraction and Report Language,由Larry Wall创建,并持续由他进行更新与维护。Perl最初被设计用于Unix环境下的编程任务,随着...
本书是perl的经典入门书籍,介绍了perl中最基本的概念和语法,是perl入门的好书,我向所有想了解或学习perl语言的朋友推荐本书。书中穿插有perl语法形成的历史和原因,使你能充分感受到perl语言的文化,这也是perl...
Perl确实是一种非常吸引人的程序语言,而之所以这么引人入胜的原因不单单在于他的功能,也在于他写作的方式,或说成为一种程序写作的艺术。即使你只是每天埋首于程序写作的程序设计师,也不再让生活过份单调,至少你...
### Perl 语言学习笔记知识点概览 #### 第一章:Perl 语言简介及基础语法 - **Perl 的定义**:Perl 是 Practical Extraction and Report Language 的缩写,是一种强大的脚本语言,广泛应用于文本处理、系统管理...
### Perl语言学习笔记 #### Perl语言概述 - **高级语言与低级语言**: 在这篇笔记中,作者首先区分了高级语言和低级语言。高级语言指的是脚本语言,这类语言通常不直接操作底层硬件,例如Shell和Awk。低级语言则...
### Perl学习笔记:快速入门与面向对象编程 #### 基础概念介绍 Perl是一种功能强大的脚本语言,被广泛应用于系统管理、网络编程、文本处理等领域。它具有丰富的内置函数和灵活的数据类型,能够方便地处理各种复杂...
Perl是一种强大的脚本编程语言,尤其在文本处理和系统管理任务中广泛应用。...深入学习Perl,可以提升文本处理、系统管理以及自动化任务的效率。通过不断实践和探索,你可以掌握这个强大工具的所有潜力。
### Perl学习笔记关键知识点 #### 1. Perl简介 - **定义**:Perl是一种脚本语言,被设计用于处理文本文件、提取信息并生成报告。它由Larry Wall在1987年创建,目的是为了弥补当时其他语言如C、sed、awk等在处理文本...
这份"perl的学习笔记1"很可能是作者在深入学习Perl过程中积累的宝贵资料,包括他自己编写的小程序和学习心得。 首先,Perl语言的核心特性是其灵活性和适应性。它的语法混合了C、sed、awk等语言的特点,使得它既适合...
### Perl学习笔记 #### 第1章:Perl简介与基本语法 - **Hello, World!**:Perl中的第一个程序通常是从“Hello, World!”开始的。例如: ```perl #!/usr/bin/perl print "Hello, world!\n"; ``` 或者简化为: ...
Perl语言是一种功能强大的脚本编程语言,尤其适合文本处理和系统管理任务。本文将深入探讨Perl的命令行应用,帮助初学者快速入门。 首先,Perl有很多命令行参数,这些参数可以增强Perl程序的功能和安全性。其中,`-...
这个文档中记录和总结了我学习perl脚本语言的一些经验和初学者需要注意的事情