VistaDB 5
Tips for SQL Server migration

The TSQL syntax VistaDB supports is an expansive subset of SQL Server 2012, but not all concepts and language commands translate.  Since VistaDB is designed as a serverless database engine several concepts have no equivalents:

Security

Things like security, user permissions, etc don't exist.   Since VistaDB is in process with your application security and access control are application level logic.  There is no multi user support outside what your application provides for, so there are no user permissions.  Users do not login to VistaDB.

User permissions

Since VistaDB runs in process with the user's application and each user will need to have equivalent access to the files there is no built-in SQL Users, groups, or permissions. 

Single Database

Each VistaDB database is well, a single database. Yes, you can have as many tables as you like. But that is still a single database. There is no concept of instances of VistaDB like with SQL Server. The database file is all inclusive of your database. You xcopy it, and you are done. No permissions, no files to restore to the correct permission / user logins, etc.

Single Schema

VistaDB doesn't support user-specific schema options (as there are no users) and doesn't support schema prefixes.  For extended compatibility with SQL Server objects can be referred to using the [dbo] prefix but no other schema name can be used.

sp_ not here

The SP_ functions are mostly used by SQL Server for proprietary functionality. There are only a few VistaDB supports for getting the list of UDF's and SQL Procs.

COMPATIBILITY MODE

VistaDB has its own distinct COMPATIBILITY MODE option to let you preserve behaviors of older versions of the engine.  Like Microsoft, we recommend that you not rely on COMPATIBILITY MODE with your application.

See Also