Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
关于MySQL和MySQLite的一般问题_Mysql_Windows_Perl - Fatal编程技术网

关于MySQL和MySQLite的一般问题

关于MySQL和MySQLite的一般问题,mysql,windows,perl,Mysql,Windows,Perl,我将使用Perl的模块编写一个MySQLite数据库文件,我想知道这个文件是否可以被任何MySQL发行版读取?有没有更好的方法来创建一个简单的MySQL数据库(使用Perl) 如果这意味着什么的话,我将只使用数据库来存储基于键的唯一ID号的键值对。我尝试了BerkeleyDB,但是Perl上对它几乎没有支持,过去我无法让它在某些Windows版本上正常工作 编辑:我知道BerkeleyDB是一种更好的方法,但当我为它编写脚本时,大多数方法都要做,而且我在Windows Server 2003上有

我将使用Perl的模块编写一个MySQLite数据库文件,我想知道这个文件是否可以被任何MySQL发行版读取?有没有更好的方法来创建一个简单的MySQL数据库(使用Perl)

如果这意味着什么的话,我将只使用数据库来存储基于键的唯一ID号的键值对。我尝试了BerkeleyDB,但是Perl上对它几乎没有支持,过去我无法让它在某些Windows版本上正常工作


编辑:我知道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
查询都是。