代码之家  ›  专栏  ›  技术社区  ›  Aftershock

您知道用Perl编写的带有DBI接口的数据库吗?

  •  2
  • Aftershock  · 技术社区  · 14 年前

    您知道一个纯用Perl编写的数据库,带有DBI接口吗? 或者,如果没有安装MySQL或PostgreSQL,而我只想使用Perl,那么可以使用什么?

    谢谢您。

    好的,我只是想要一些可以和催化剂一起使用的东西。

    6 回复  |  直到 14 年前
        1
  •  13
  •   Suic    11 年前

    我相信 DBD::CSV 是一个简单的DBD实现,它使用文本::csv将数据保存到csv文件。

        2
  •  17
  •   Suic    11 年前

    那sqlite呢? DBD::SQLite

        3
  •  8
  •   DVK    14 年前

    这很大程度上取决于你所认为的“数据库”。

    如果您只想存储数据,可以使用许多Perl数据库。以下列出了一些: http://www.perl.com/pub/a/2004/09/12/embedded.html

    • 领带::文件

    • Berkley数据库

    • 数据库

      请注意,尽管我在这里看到了“sqlite是用C语言写的”注释,但本文明确指出 :

      方便,DBI驱动程序 sqlite,dbd::sqlite,已经包含 数据库引擎本身是 模块-因此安装此模块 所有这些都是为了 使用Perl中的sqlite。

    但是,上面没有一个是真正的数据库引擎,支持事务等,尽管有些允许类似SQL的查询语言访问。

    我不知道用Perl实现的任何真正的数据库引擎。

        4
  •  2
  •   Jürgen Steinblock    14 年前

    Perl规则34:

    如果你能想象的话,有一个DBD 它的模块;)

    http://search.cpan.org/search?m=module&q=DBD::&s=1

        5
  •  1
  •   TerryP    14 年前

    在纯Perl中没有数据库 关系式 这不太经济;你可以在CPAN上查看ACME。

    本质上,您有两个选择:一个纯粹的Perl模块,它提供了一个DBD包,可以将其包装起来,例如.txt、.csv或.xml文件。

    如果没有,您也可以使用纯Perl实现自己的bdb/dbm风格的系统,就像ken thompson在c和dbm中所做的那样。然而,它不会像拥有基于SQL的关系数据库那样复杂。

    如果希望使用SQL,请使用基于SQL的数据库。

        6
  •  0
  •   Patrick Böker    9 年前

    DBD::DBM 是纯Perl数据库驱动程序,它是 双折射 自1.42版(2004年4月)以来。它可以使用各个模块处理各种不同的数据库格式,例如 BerkleyDB SDBM_File (核心模块)。

    我们需要把这个和 MLDBM 获取可用的数据库(否则,每个表只支持两列)。

    DBD::DBM的文档非常广泛,提供了对不同选项以及如何设置的良好概述。