`

perl学习笔记(五)

    博客分类:
  • Perl
阅读更多
#!/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技能。

    perl学习笔记

    以下是对Perl学习笔记中提到的关键知识点的详细说明: 1. **标量**: 标量是Perl中最基本的变量类型,用于存储单个值,如字符串或数字。变量名前缀是美元符号“$”。例如,`$first_name = "Melanie"`定义了一个名...

    Perl学习笔记中的所有脚本文件

    Perl学习笔记中的所有脚本文件,https://blog.csdn.net/zgezi/category_10259467.html

    perl学习笔记参考

    ### Perl学习笔记参考 #### Perl简介 Perl是一种高级编程语言,全称为Practical Extraction and Report Language,由Larry Wall创建,并持续由他进行更新与维护。Perl最初被设计用于Unix环境下的编程任务,随着...

    perl学习笔记。。。

    本书是perl的经典入门书籍,介绍了perl中最基本的概念和语法,是perl入门的好书,我向所有想了解或学习perl语言的朋友推荐本书。书中穿插有perl语法形成的历史和原因,使你能充分感受到perl语言的文化,这也是perl...

    perl 学习笔记和心得

    Perl确实是一种非常吸引人的程序语言,而之所以这么引人入胜的原因不单单在于他的功能,也在于他写作的方式,或说成为一种程序写作的艺术。即使你只是每天埋首于程序写作的程序设计师,也不再让生活过份单调,至少你...

    perl 语言学习笔记

    ### Perl 语言学习笔记知识点概览 #### 第一章:Perl 语言简介及基础语法 - **Perl 的定义**:Perl 是 Practical Extraction and Report Language 的缩写,是一种强大的脚本语言,广泛应用于文本处理、系统管理...

    perl学习资料!个人学习perl的笔记

    ### Perl语言学习笔记 #### Perl语言概述 - **高级语言与低级语言**: 在这篇笔记中,作者首先区分了高级语言和低级语言。高级语言指的是脚本语言,这类语言通常不直接操作底层硬件,例如Shell和Awk。低级语言则...

    perl学习笔记,让你更容易入门

    ### Perl学习笔记:快速入门与面向对象编程 #### 基础概念介绍 Perl是一种功能强大的脚本语言,被广泛应用于系统管理、网络编程、文本处理等领域。它具有丰富的内置函数和灵活的数据类型,能够方便地处理各种复杂...

    Perl学习笔记.docx

    Perl是一种强大的脚本编程语言,尤其在文本处理和系统管理任务中广泛应用。...深入学习Perl,可以提升文本处理、系统管理以及自动化任务的效率。通过不断实践和探索,你可以掌握这个强大工具的所有潜力。

    Perl学习笔记

    ### Perl学习笔记关键知识点 #### 1. Perl简介 - **定义**:Perl是一种脚本语言,被设计用于处理文本文件、提取信息并生成报告。它由Larry Wall在1987年创建,目的是为了弥补当时其他语言如C、sed、awk等在处理文本...

    perl的学习笔记1

    这份"perl的学习笔记1"很可能是作者在深入学习Perl过程中积累的宝贵资料,包括他自己编写的小程序和学习心得。 首先,Perl语言的核心特性是其灵活性和适应性。它的语法混合了C、sed、awk等语言的特点,使得它既适合...

    Perl 学习笔记

    ### Perl学习笔记 #### 第1章:Perl简介与基本语法 - **Hello, World!**:Perl中的第一个程序通常是从“Hello, World!”开始的。例如: ```perl #!/usr/bin/perl print "Hello, world!\n"; ``` 或者简化为: ...

    Perl语言入门学习笔记

    Perl语言是一种功能强大的脚本编程语言,尤其适合文本处理和系统管理任务。本文将深入探讨Perl的命令行应用,帮助初学者快速入门。 首先,Perl有很多命令行参数,这些参数可以增强Perl程序的功能和安全性。其中,`-...

    perl脚本语言学习笔记心得

    这个文档中记录和总结了我学习perl脚本语言的一些经验和初学者需要注意的事情

Global site tag (gtag.js) - Google Analytics