The Sql Engine connection string parameter determines how dotConnect for MongoDB interprets the command text.
| Sql Engine=true (default) | Sql Engine=false (native mode) | |
|---|---|---|
| Command text | A SQL statement in the SQLite dialect. | A MongoDB database command in Extended JSON. |
| Collection | A table. For more information, see Collections as Tables. | The target of the command. The insert command creates the collection if it doesn't exist. |
| Supported | SELECT, INSERT, INSERT ... SELECT, UPDATE, and DELETE with any WHERE clause, SQLite functions, inner and left joins, CREATE TABLE, DROP TABLE, CREATE INDEX, and DROP INDEX. | find, distinct, count, aggregate, getMore, insert, update, delete, create, drop, createIndexes, dropIndexes, ping, buildInfo, hello, and dropDatabase. |
| Not supported | ALTER TABLE, views, triggers, and RETURNING. | Any other command, for example, listCollections or collMod. Such a command fails with the "The '<command>' command is not supported" error. |
| Required for | Entity Framework Core, Server Explorer, DataSet tools, and MongoDBScript. |
The topics in the Working with Data section describe SQL mode unless otherwise specified.