Problem: Wrongly named collections in MongoDB will cause exceptions
Why the problem occurs:
I found most of my tips from this article.
http://blog.shlomoid.com/2011/08/how-to-fix-erroneously-named-mongodb.html
Collection names should begin with letters or an underscore and may include numbers; $ is reserved. Collections can be organized in namespaces; these are named groups of collections defined using a dot notation.
You can create collections with names that include hyphens. As explained in the article above, the db.runCommand for creating a collection can look like:
db.runCommand({"create":"test-col"});
However, since the javascript console will interpret collection names with hyphens in them as subtracting letters, you will get errors.
Solution:
https://jira.mongodb.org/browse/PHP-282
https://jira.mongodb.org/browse/PHP-282
You need to be in to your admin db (and you might need to login first, might not for local)
> use db1
> db.auth(user, pass)
> use admin
> db.runCommand ({renameCollection: "db1.test-col", to: "db1.testCol"})
> db.auth(user, pass)
> use admin
> db.runCommand ({renameCollection: "db1.test-col", to: "db1.testCol"})
If that does not work, you might need to repair your database using mongod.
http://www.mongodb.org/display/DOCS/Durability+and+Repair
For my Clojure web app, I tried to keep to a naming convention for my data (using hyphens for spaces) and my functions (using underscore for spaces) but I got a gotcha with Javascript (I think this will happen when using ClojureScript too).
شركة تنظيف منازل بالطائف
ReplyDeleteشركة تنظيف كنب بالطائف
أفضل شركة نقل عفش بالطائف
شركة نظافة خزانات بالطائف
شركة رش حشرات بالطائف
شفط بيارات بالطائف
أفضل شركة تنسيق حدائق بالطائف