When I do:
$q = \'insert into movies values(\"lion king\"); select * from movies;\';
$result = $db->query($q);
echo mysqli_num_rows($result);
Don't confuse how you write 'queries' in the MySQL command line interface with how you do it with the API.
The MySQL command just wraps the API with something more shell like.
Using the API, you can really only do one query at a time. Of course the client side of the API could do something smart and interpret the semi-colons, splitting into multiple queries for you, but that probably just isn't that useful for enough people.