The same Microsoft® SQL Server™ 2000 database engine that supports thousands of concurrent users can also be installed on laptop or desktop computers running either Microsoft Windows® 98, Microsoft Windows NT® Workstation, or Windows 2000 Professional. Two versions of SQL Server 2000 that run on these operating systems are:
An edition of SQL Server 2000 used on personal workstations or small workgroup servers. SQL Server 2000 Personal Edition includes the management tools, such as SQL Server Enterprise Manager, that come with both SQL Server 2000 Standard Edition and SQL Server 2000 Enterprise Edition.
A redistributable version of the SQL Server relational database engine, which third-party software developers can include in their applications that use SQL Server to store data. The SQL Server 2000 Desktop Engine is made available as a set of Windows Installer merge modules that can be included in the application setup.
The SQL Server 2000 Desktop Engine does not include graphical management tools; the application distributing the engine is usually coded to perform any needed database administration. You can manage instances of the Desktop Engine from the SQL Server 2000 graphical tools if installed with another edition of SQL Server.
The SQL Server 2000 Desktop Engine includes support for all of the programming APIs and most of the functionality of the other editions of SQL Server 2000. It also includes the SQLServerAgent service for managing scheduled tasks. Although the Desktop Engine does not include the management tools or wizards, applications can fully administer an instance of the Desktop Engine using the SQL Server administration APIs, such as SQL-DMO, the DTS and Replication programming objects, or the general database APIs (such as ADO, OLE DB, and ODBC). Applications can use the general database APIs to access data in the Desktop Engine, and the Desktop Engine can participate alongside other editions of SQL Server 2000 in DTS transformations and replication plans (except operating as a transactional replication Publisher). For more information about the features supported by the Desktop Engine, see Features Supported by the Editions of SQL Server 2000.
The database engine included in these two versions of SQL Server 2000 is tuned to support the workloads typical of a single user or a small workgroup. The database engine provides desktop users with essentially the same functionality and features as SQL Server 2000 Standard Edition and SQL Server 2000 Enterprise Edition; however, two exceptions are:
The ease-of-use features of the database engine allow it to run in a laptop or desktop environment with minimal configuration tuning from the user. The database engine automatically configures itself to acquire or free resources, such as memory and disk space, as needed. This means that SQL Server 2000 Personal Edition and SQL Server 2000 Desktop Engine can be run on an end-user laptop or desktop computer without requiring the user or database administrator to constantly tune the database.
SQL Server 2000 Personal Edition and SQL Server 2000 Desktop Engine support the same programming model as SQL Server 2000 Standard Edition and SQL Server 2000 Enterprise Edition. Applications use the same APIs (ADO, OLE DB, ODBC, SQL-DMO, and so on) to access the data in all the editions of SQL Server 2000. The only difference is the set of features supported in the higher-level editions, such as failover clustering or federated database servers, although most of these features are administrative or scalability features that are transparent to most applications.
The database engine used in SQL Server 2000 supports optimizations that maximize performance in small laptop or desktop systems with small amounts of memory:
SQL Server 2000 replication and the ability of the database engine to attach and detach databases offers good support for mobile and disconnected users with laptops. These users can periodically connect to a regional or departmental server to resynchronize their database information with the main database through replication. Alternatively, a database can be placed on a compact disc and sent to remote users, where they can simply attach it to their server to get the latest information.