Compile and run the tool with the following command:
cargo run -- add 43fb507d-4cee-431a-a7eb-af31a1eeed02 "Logged In"
cargo run -- add 43fb507d-4cee-431a-a7eb-af31a1eeed02 "Added contact information"
cargo run -- add 43fb507d-4cee-431a-a7eb-af31a1eeed02 "E-mail confirmed"
Print a list of added records with the following command:
cargo run -- list
This will print the following output:
User: 43fb507d-4cee-431a-a7eb-af31a1eeed02 DateTime: 2018-11-30 14:19:26.245957656 UTC Activity: Logged In
User: 43fb507d-4cee-431a-a7eb-af31a1eeed02 DateTime: 2018-11-30 14:19:42.249548906 UTC Activity: Added contact information
User: 43fb507d-4cee-431a-a7eb-af31a1eeed02 DateTime: 2018-11-30 14:19:59.035373758 UTC Activity: E-mail confirmed
You can also check the result with the mongo client:
mongo admin
> db.activities.find()
{ "_id" : ObjectId("5c0146ee6531339934e7090c"), "user_id" : "43fb507d-4cee-431a-a7eb-af31a1eeed02", "activity" : "Logged In", "datetime" : "2018-11-30 14:19:26.245957656 UTC" }
{ "_id" : ObjectId("5c0146fe653133b8345ed772"), "user_id" : "43fb507d-4cee-431a-a7eb-af31a1eeed02", "activity" : "Added contact information", "datetime" : "2018-11-30 14:19:42.249548906 UTC" }
{ "_id" : ObjectId("5c01470f653133cf34391c1f"), "user_id" : "43fb507d-4cee-431a-a7eb-af31a1eeed02", "activity" : "E-mail confirmed", "datetime" : "2018-11-30 14:19:59.035373758 UTC" }
You did it! It works well! Now, you know how to use all popular databases with Rust. In the next chapter, we will improve on this knowledge with object-relational mapping (ORM), which helps to simplify database structure declaration, interaction, and migrations.