我发现做这件事的唯一方法是:
$mongo->selectDB('new_db')->createCollection('tmp_collection');
$mongo->selectDB('new_db')->dropCollection('tmp_collection');只做$mongo->selectDB('new_db')实际上是行不通的。有什么想法吗?
发布于 2010-12-23 07:37:59
在创建数据库之前,您至少需要在数据库上运行一个命令...
此命令可以在add any Colltions...之前运行所以你只能列出(不存在的)集合。
<?php
$connection = new Mongo();
$db = $connection->foo;
$list = $db->listCollections();
foreach ($list as $collection) {
echo "$collection </br>";
}
?>您的新数据库现在应该已经存在,并且还没有创建任何用户集合。
发布于 2010-12-23 07:07:44
从技术上讲,您不需要在MongoDB中手动创建数据库或集合,因为它的无模式“惰性”创建数据库和集合的方式。
我明白,如果你来自SQL世界,这没有多大意义。您可能会问自己,“如果它在运行时自动为我创建了一个集合或数据库,那么真的需要提前定义它吗?”
https://stackoverflow.com/questions/4508529
复制相似问题