perl操作Mongodb问题?
# vi mongo.pl#!/usr/bin/perl -w
use strict;
use MongoDB;
use MongoDB::OID;
my $conn = MongoDB::Connection->new("host" => "192.168.110.1:27017","username=>pstkf","passname=>pstkf");
my $database=$conn->pst;
my $coll = $database->get_collection('UsersInfo');
my $data = $database->find_one();
print "$data";
执行报错
# ./mongo.pl
Can't locate object method "UsersInfo" via package "MongoDB::Database" at ./mongo.pl line 7.
提示找不到UsersInfo这个方法,但是UsersInfo是表名。 都开始用上了Mongodb。:emn18: get_collection
这个不是MongoDB 的方法吧。
看一下手册 http://search.cpan.org/~kristina/MongoDB-0.42/lib/MongoDB.pm
use MongoDB;
my $connection = MongoDB::Connection->new(host => 'localhost', port => 27017);
my $database = $connection->foo;
my $collection = $database->bar;
my $id = $collection->insert({ some => 'data' });
my $data = $collection->find_one({ _id => $id });
=head
foo <-- db_name
bar <-- tbl_name
=cut
回复 3# alabos
谢谢楼上的回复,我用你的代码测试了一下,提示找不到bar这个方法。我怀疑是不是perl MongoDB这个模块没装好。
cpan> m MongoDB
CPAN: Storable loaded ok
Going to read /root/.cpan/Metadata
Database was generated on Mon, 28 Mar 2011 13:33:29 GMT
Module id = MongoDB
CPAN_USERIDKRISTINA (Kristina Chodorow <kristina@10gen.com>)
CPAN_VERSION 0.42
CPAN_FILE K/KR/KRISTINA/MongoDB-0.42.tar.gz
MANPAGE MongoDB - Mongo Driver for Perl
INST_FILE /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/MongoDB.pm
INST_VERSION 0.42
页:
[1]