关于MySQL和MySQLite的一般问题
我将使用Perl的模块编写一个MySQLite数据库文件,我想知道这个文件是否可以被任何MySQL发行版读取?有没有更好的方法来创建一个简单的MySQL数据库(使用Perl) 如果这意味着什么的话,我将只使用数据库来存储基于键的唯一ID号的键值对。我尝试了BerkeleyDB,但是Perl上对它几乎没有支持,过去我无法让它在某些Windows版本上正常工作关于MySQL和MySQLite的一般问题,mysql,windows,perl,Mysql,Windows,Perl,我将使用Perl的模块编写一个MySQLite数据库文件,我想知道这个文件是否可以被任何MySQL发行版读取?有没有更好的方法来创建一个简单的MySQL数据库(使用Perl) 如果这意味着什么的话,我将只使用数据库来存储基于键的唯一ID号的键值对。我尝试了BerkeleyDB,但是Perl上对它几乎没有支持,过去我无法让它在某些Windows版本上正常工作 编辑:我知道BerkeleyDB是一种更好的方法,但当我为它编写脚本时,大多数方法都要做,而且我在Windows Server 2003上有
编辑:我知道BerkeleyDB是一种更好的方法,但当我为它编写脚本时,大多数方法都要做,而且我在Windows Server 2003上有一些神秘的错误,使用的是在家里的Win7机器上连续运行两周的相同的密封代码。MySQL和SQLite是完全独立的RDBMS系统。没有MySQLite这样的东西。据我所知,MySQL无法读取SQLite数据库
如果您真正想要的只是一个键值存储,那么可以看看Redis:BerkeleyDB受到perl的良好支持。您可以在旧的DB_文件和功能更全面的BerkeleyDB模块之间进行选择 但是有很多选择。如果不想运行单独的服务器进程,请使用DBI和DBD::SQLite或BerkeleyDB或任何AnyDBM_文件模块。对于一个简单的基于服务器的键值存储,有redis或旧的memcached。我使用Perl,可以使用MySQL或SQLite读取数据库。你所需要的只是正确的司机。事实上,如果正确编写程序,后端数据库(SQLite或MySql)是不相关的。您的程序将与其中任何一个一起工作 但是,不能使用SQLite数据库,然后将其视为MySQL数据库。他们是两种不同的生物。您的程序可以与数据库无关,但一旦选择了数据库,就无法来回切换。这就像打开一个Oracle数据库作为MySQL数据库一样
有关更多信息,请参阅。我非常确定没有
MySQLite
。有一个SQLite
,它太棒了!Perl中对BerkeleyDB有相当多的支持。DB_文件是访问它的基本方式,如果它是使用BDB支持构建的,Perl可以使用它。CPAN上还有BerkeleyDB模块,它提供对更多BDB接口的访问。事实上,MySQL语法与SQLite非常不同(CREATE
,ALTER
等)。它们非常不兼容。但是,大多数SELECT
查询都是。