What's New Since SQL-DMO
SQL Server Management Objects (SMO) is a new managed code object model that replaces SQL Distributed Management Objects (SQL-DMO). Similar to SQL-DMO, SMO provides objects that are used to manage Microsoft SQL Server. The programming model has been improved and the number of objects has grown to include all the new features in SQL Server.
New features in SMO include the following:
- Improved performance. Objects are loaded only when specifically referenced. Object properties are only partially loaded when the object is created. The remaining objects are loaded when they are referenced directly
- Capture and batched execution of Transact-SQL statements. Statements can be captured and sent as a batch to improve network performance.
- Management of SQL Server services with the WMI Provider. SQL Server services can be started, stopped, and paused programmatically.
- Advanced Scripting. Transact-SQL scripts can be generated to re-create SQL Server objects that describe relationships to other objects on the instance of SQL Server.
- Transfer of data is leveraged off the scripting functionality and uses Integration Services.
- Use of Unique Resource Names (URNs).
- Event handling that allows the developer to insert code that is executed when a specific event occurs.
- Exceptions that are used to identify specific to SMO errors.
- Better coverage of database objects. For example, the ForeignKey object allows for more control over foreign keys.
SMO also represents as new objects or properties a number of features and components new to SQL Server 2005. These new features and components include the following:
- Table and index partitioning for storage of data on a partition scheme. For more information, see 분할 테이블 및 인덱스 개념.
- HTTP endpoints for managing SOAP requests. For more information, see SOAP 세션 지원 작업 방법.
- Snapshot isolation and row level versioning for increased concurrency. For more information, see Working with Snapshot Isolation.
- XML Schema collection, XML indexes and XML datatype provide validation and storage of XML data. For more information, see Using XML Schemas and Using XML Data Types.
- View point databases for creating read-only copies of databases.
- Service Broker support for message-based communication. For more information, see Service Broker.
- Synonym support for multiple names of SQL Server database objects. For more information, see 동의어 이해.
- The management of Database Mail that allows the creation of e-mail servers, e-mail profiles, and e-mail accounts in SQL Server. For more information, see 데이터베이스 메일.
- Registered servers support for registering connection information. For more information, see 등록된 서버 관리.
- Trace and replay of SQL Server events. For more information, see SQL Server 프로파일러 사용 and SQL Trace 사용.
- Notification Services for sending and subscribing to notifications events. For more information, see SQL Server Notification Services.
- Support for certificates and keys for security control. For more information, see 암호화 계층.
- DDL triggers for adding functionality when DDL events occur. For more information, see DDL 트리거.