dingsir的个人博客分享 http://blog.sciencenet.cn/u/dingsir

博文

Perl处理SQLite数据库示例

已有 2070 次阅读 2021-6-2 23:36 |个人分类:软件杂谈|系统分类:教学心得

用了不到90行代码,做了一个用Perl来读取配方数据库的工具。数据库因为保密不能分享,可以说的是,配方数据库的主表叫Main,文件名为PerlFormuDB.db3,放在pl文件的相同目录下,用户名和密码都是空字串.


本来想用于访问MySQL数据库的,但是Perl的DBI::MySQL不够新,无法支持MySQL 8.0以上的加密方式,所以只好转用SQLite数据库来尝试。以下压缩包含源码PDF以及源码本身。

PerlDBSearch(SQLite).rar


第一屏.png


第2屏.png

基本思路是,做一个循环(使用Perl中的goto来实现,颇有当年BASIC的风范),只要无输入直接回车才退出。

根据部分条件或完整语句来检索数据库,输出结果。字段值为0或空值的不输出。

解释的地方:

20~34行 显示数据表的所有字段,以方便后面查询语句使用。

46,62行是为了区分不同的SQL语句。52行 如果完整语句中含星号,则特殊处理一下。

72行是取回一行数据,以哈希引用的形式。括号内NAME_uc表示字段名强制大写形式输出(小写lc)。

75行,使用一个临时哈希来处理当前行的数据。80行是去除字段值中的特殊字符,以抑制错误提示。

79行特别简洁有效,当字段值为0或Undef时,直接略过。


仅自娱。备忘用。





https://blog.sciencenet.cn/blog-1213210-1289444.html

上一篇:正则匹配备忘几则
下一篇:MySQL用法几则(自用)
收藏 IP: 60.177.28.*| 热度|

0

评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-20 05:02

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部