I’m transferring a MySQL table to MongoDB. There is a primary key id in my MySQL table and I want this id to be converted to the _id in MongoDB.
I use php’s MongoCollection::insert( $mysql_array );
However it doesn’t work because if I set $mysql_array['_id'] it is seen by mongo as a String instead of a MongoId. I tried $mysql_array['_id'] = new MongoId( $id ) but it doesn’t allow me to override the default _id value. I saw that all my MySQL’s integer columns are converted to string by MongoCollection::insert(). If I could set MongoCollection::insert() to correctly transfer an integer it would maybe work.
typecast the _id to a integer value like this…
(int) $mysql_array[‘_id’]
You’ll find yourself doing this a lot in mongoDB