FACTOID # 14: North Carolina has a larger Native American population than North Dakota, South Dakota and Montana combined.
 
 Home   Encyclopedia   Statistics   States A-Z   Flags   Maps   FAQ   About 
   
 
WHAT'S NEW
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > Microsoft SQL Server
Microsoft SQL Server
Developer: Microsoft
Latest release: 2005 / November 7, 2005
OS: Microsoft Windows
Genre: RDBMS
License: Microsoft EULA
Website: www.microsoft.com/sql/

Microsoft SQL Server is a relational database management system (RDBMS) produced by Microsoft. Its primary query language is Transact-SQL, an implementation of the ANSI/ISO standard Structured Query Language (SQL) used by both Microsoft and Sybase. Image File history File links No higher resolution available. ... “Software development” redirects here. ... Microsoft Corporation, (NASDAQ: MSFT, HKSE: 4338) is a multinational computer technology corporation with global annual revenue of US$44. ... Code complete redirects here. ... is the 311th day of the year (312th in leap years) in the Gregorian calendar. ... Year 2005 (MMV) was a common year starting on Saturday (link displays full calendar) of the Gregorian calendar. ... An operating system (OS) is the software that manages the sharing of the resources of a computer and provides programmers with an interface used to access those resources. ... Windows redirects here. ... Computer software can be organized into categories based on common function, type, or field of use. ... A relational database management system (RDBMS) is a database management system (DBMS) that is based on the relational model as introduced by Edgar F. Codd. ... A software license is a legal agreement which may take the form of a proprietary or gratuitous license as well as a memorandum of contract between a producer and a user of computer software. ... ... A website (alternatively, Web site or web site) is a collection of Web pages, images, videos or other digital assets that is hosted on one or several Web server(s), usually accessible via the Internet, cell phone or a LAN. A Web page is a document, typically written in HTML... A relational database management system (RDBMS) is a database management system (DBMS) that is based on the relational model as introduced by E. F. Codd. ... Microsoft Corporation, (NASDAQ: MSFT, HKSE: 4338) is a multinational computer technology corporation with global annual revenue of US$44. ... Query languages are computer languages used to make queries into databases and information systems. ... Transact-SQL (TSQL) is an enhanced version of the SQL relational database language. ... SQL (IPA: or ) is a computer language designed for the retrieval and management of data in relational database management systems, database schema creation and modification, and database object access control management. ... Sybase Inc. ...

Contents

Architecture

The architecture of SQL Server
The architecture of SQL Server

The architecture of Microsoft SQL Server is broadly divided into three components: SQLOS which implements the basic services required by SQL Server, including thread scheduling, memory management and I/O management; the Relational Engine, which implements the relational database components including support for databases, tables, queries and stored procedures as well as implementing the type system; and the Protocol Layer which exposes the SQL Server functionality.[1] Image File history File links SQL_Server. ... Image File history File links SQL_Server. ...


SQLOS

SQLOS is the base component in the SQL Server architecture. It implements functions normally associated with the Operating System - thread scheduling, memory management, I/O management, buffer pool management, resource management, synchronization primitives and locking, and deadlock detection. Because the requirement of SQL Server is highly specialized,[1] SQL Server implements its own memory and thread management system, rather than using the generic one already implemented in the Operating System. It divides all the operations it performs into a series of Tasks - both background maintenance jobs as well as processing requests from clients.[2] Internally, a pool of worker threads is maintained, onto which the tasks are scheduled. A task is associated with the thread till it is completed, only after its completion is the thread freed and returned to the pool. If there are no free threads to assign the task to, the task is temporarily blocked.[2] Each worker thread is mapped onto either an Operating System thread or a fiber, which are user mode threads, which is used to implement co-operative multitasking. Using the latter, even though all the book-keeping jobs of thread management has to be implemented in SQLOS (in addition to the native OS implementation), it can optimize for the particular use.[2] SQLOS also includes synchronization primitives for locking as well as monitoring for the worker threads to detect if they have entangled themselves into a deadlock and takes necessary measures to recover from the situation.[1] Many programming languages, operating systems, and other software development environments support what are called threads of execution. ... User mode refers to two similar concepts in computer architecture. ... It has been suggested that this article or section be merged into Computer_multitasking#Cooperative_multitasking. ... In computer science, a lock is a mechanism for enforcing limits on access to a resource in an environment where there are many threads of execution. ... This article is about deadlock in computing. ...


SQLOS handles the memory requirements of SQL Server as well. Reducing disc I/O is one of the primary goals of specialized memory management in SQL Server.[3] As such, it maintains a buffer pool, handled by SQLOS, which is used to cache data pages from the disc as well as to satisfy the memory requirements for other components, including query processor, and other internal data structures.[1] SQLOS also has to take care that the memory allocated is used efficiently, as such it monitors all the memory allocated from the buffer pool, ensuring that the components return unused memory to the pool, as well as shuffling data in and out of the cache to make room for newer data. For changes that are made to the data in buffer, SQLOS writes the data back to the disc lazily, that is when the disc subsystem is either free, or there have significant number changes made to the cache, while still serving requests from the cache. For this, it implements a Lazy Writer, which handles the task of writing the data back to persistent storage.[1] Wiktionary has related dictionary definitions, such as: buffer Buffer can refer to: Buffer state, a country lying between two potentially hostile greater powers, thought to prevent conflict between them Buffer zone, any area that keeps two or more other areas distant from one another, may be demilitarized Buffer (rail transport... For other uses, see cache (disambiguation). ...


SQL Server normally supports up to 2 GB memory on x86 hardware, though it can be configured to use up to 64 GB if Address Windowing Extension is used on supporting OS. For x64 hardware, it supports 8 TB of memory, and 7 TB for IA-64 systems. However, when running x86 versions of SQL Server on x64 hardware, it can access 4 GB of memory without any special configuration.[3] x86 or 80x86 is the generic name of a microprocessor architecture first developed and manufactured by Intel. ... Address Windowing Extensions (AWE) is a Microsoft Windows Application Programming Interface that allows a 32-bit software application to access physical memory greater than 4GB. The process of mapping an applications virtual address space to physical memory is known as windowing. The virtual address space or memory window of... x64 is Microsoft Corporations marketing designation for the Advanced Micro Devices AMD64 and Intel EM64T 64-bit Instruction Set Extensions to the x86 architecture, which were substantially similar as of 2004. ... In computing, IA-64 (short for Intel Architecture-64) is a 64-bit processor architecture developed cooperatively by Intel Corporation and Hewlett-Packard (HP), and implemented in the Itanium and Itanium 2 processors. ... x86 or 80x86 is the generic name of a microprocessor architecture first developed and manufactured by Intel. ... x64 is Microsoft Corporations marketing designation for the Advanced Micro Devices AMD64 and Intel EM64T 64-bit Instruction Set Extensions to the x86 architecture, which were substantially similar as of 2004. ...


Relational engine

The Relational engine is the component, which implements the relational data store, using the capabilities provided by SQLOS, which is exposed to this layer via the private SQLOS API. It implements the type system, to define the types of the data that can be stored in the tables, as well as the different types of data items (such as tables, indexes, logs etc) that can be stored. It includes the Storage Engine, which handles the way data is stored on persistent storage devices, as well as implement methods for fast access to the data. The storage engine implements log-based transaction so as to ensure that any changes to the data are ACID compliant. It also includes the query processor, which is the component that allows data to be retrieved. The specification of what needs to be retrieved is provided in the form of a SQL query, which it optimizes and translates into the sequence of operations needed to retrieve the data. The operations are then scheduled on to the worker threads, which are scheduled for execution by SQLOS.[1] A relational database is a database that conforms to the relational model, and refers to a databases data and schema (the databases structure of how that data is arranged). ... API may refer to: In computing, application programming interface In petroleum industry, American Petroleum Institute In education, Academic Performance Index This page concerning a three-letter acronym or abbreviation is a disambiguation page — a navigational aid which lists other pages that might otherwise share the same title. ... Data logging is the practice of recording sequential data, often chronologically. ... A database transaction is a unit of interaction with a database management system or similar system that is treated in a coherent and reliable way independent of other transactions. ... For other uses, see Acid (disambiguation). ... SQL (IPA: or ) is a computer language designed for the retrieval and management of data in relational database management systems, database schema creation and modification, and database object access control management. ...


Protocol layer

Protocol layer implements the external interface to SQL Server. All operations that can be invoked on SQL Server are communicated to it via a Microsoft-defined format, called Tabular Data Stream (TDS). TDS packets can be encased in other physical transport dependent protocols, including TCP/IP, Named pipes, and Shared memory. Consequently, access to SQL Server is available over these protocols. In addition, the SQL Server API is also exposed over web services.[1] Tabular Data Stream (TDS) is a protocol or a set of rules describing how to transmit data between two computers. ... The Internet protocol suite is the set of communications protocols that implement the protocol stack on which the Internet runs. ... In computing, a named pipe (also FIFO for its behaviour) is an extension to the traditional pipe concept on Unix and Unix-like systems, and is one of the methods of inter-process communication. ... // Diagram of a typical Shared memory system. ... Web services architecture The W3C defines a Web service (many sources also capitalize the second word, as in Web Services) as a software system designed to support interoperable Machine to Machine interaction over a network. ...


Data storage

The main unit of data storage is a database, which is a collection of tables with typed columns. SQL Server supports different data types, including primary types such as Integer, Float, Decimal, Char (including character strings), Varchar (variable length character strings), binary (for unstructured binary blob of data), Text (for textual data) among others. It also allows user-defined composite types (UDTs) to be defined and used. SQL Server also makes server statistics available as virtual tables and views (called Dynamic Management Views or DMVs). A database can also contain other objects including views, stored procedures, indexes and constraints, in addition to tables, along with a transaction log. An SQL Server database can contain a maximum of 231 objects, and can span multiple OS-level files with a maximum file size of 220 TB.[1] The data in the database are stored in primary data files with an extension .mdf. Secondary data files, identified with an .ndf extension, are used to store optional metadata. Log files are identified with the .ldf extension.[1] This article is about computing. ... In computer science, a type system defines how a programming language classifies values and expressions into types, how it can manipulate those types and how they interact. ... In computer science, primitive types — as distinct from composite types — are data types provided by a programming language as basic building blocks. ... Look up blob in Wiktionary, the free dictionary. ... In database theory, a view is a virtual or logical table composed of the result set of a query. ... A stored procedure is a subroutine available to applications accessing a relational database system. ... A database index is a data structure that improves the speed of operations in a table. ... A relational database is a database that conforms to the relational model, and refers to a databases data and schema (the databases structure of how that data is arranged). ... This article is about a measurement term for data storage capacity. ...


Storage space allocated to a database is divided into sequentially numbered pages, each 8 KB in size. A page is the basic unit of I/O for SQL Server operations. A page is marked with a 96-byte header which stores metadata about the page including the page number, page type, free space on the page and the ID of the object that owns it. Page type defines the data contained in the page - data stored in the database, index, allocation map which holds information about how pages are allocated to tables and indexes, change map which holds information about the changes made to other pages since last backup or logging, or contain large data types such as image or text. While page is the basic unit of an I/O operation, space is actually managed in terms of an extent which consists of 8 pages. A database object can either span all 8 pages in an extent ("uniform extent") or share an extent with up to 7 more objects ("mixed extent"). A row in a database table cannot span more than one pages, so is limited to 8 KB in size. However, if the data exceeds 8 KB and the row contains Varchar or Varbinary data, the data in those columns are moved to a new page (or possible a sequence of pages, called Allocation unit) and replaced with a pointer to the data.[4]


For physical storage of a table, its rows are divided into a series of partitions (numbered 1 to n). The partition size is user defined; by default all rows are in a single partition. A table is split into multiple partitions in order to spread a database over a cluster. Rows in each partition are stored in either B-tree or heap structure. If the table has an associated index to allow fast retrieval of rows, the rows are stored in-order according to their index values, with a B-tree providing the index. The data is in the leaf node of the leaves, and other nodes storing the index values for the leaf data reachable from the respective nodes. If the index is non-clustered, the rows are not sorted according to the index keys. An indexed view has the same storage structure as an indexed table. A table without an index is stored in an unordered heap structure. Both heaps and B-trees can span multiple allocation units.[5] Linux Cluster at Purdue University A computer cluster is a group of locally connected computers that work together as a unit. ... B-trees are tree data structures that are most commonly found in databases and filesystem implementations. ... Example of a complete binary max heap In computer science, a heap is a specialized tree-based data structure that satisfies the heap property: if B is a child node of A, then key(A) ≥ key(B). ... A database index is a data structure that improves the speed of operations in a table. ... B-trees are tree data structures that are most commonly found in databases and filesystem implementations. ... In database theory, a view is a virtual or logical table composed of the result set of a query. ... Example of a complete binary max heap In computer science, a heap is a specialized tree-based data structure that satisfies the heap property: if B is a child node of A, then key(A) ≥ key(B). ...


Buffer management

SQL Server buffers pages in RAM to minimize disc I/O. Any 8 KB page can be buffered in-memory, and the set of all pages currently buffered is called the buffer cache. The amount of memory available to SQL Server decides how many pages will be cached in memory. The buffer cache is managed by the Buffer Manager. Either reading from or writing to any page copies it to the buffer cache. Subsequent reads or writes are redirected to the in-memory copy, rather than the on-disc version. The page is updated on the disc by the Buffer Manager only if the in-memory cache has not been referenced for some time. While writing pages back to disc, asynchronous I/O is used whereby the I/O operation is done in a background thread so that other operations do not have to wait for the I/O operation to complete. Each page is written along with its checksum when it is written. When reading the page back, its checksum is computed again and matched with the stored version to ensure the page has not been damaged or tampered with in the mean time.[6] Wiktionary has related dictionary definitions, such as: buffer Buffer can refer to: Buffer state, a country lying between two potentially hostile greater powers, thought to prevent conflict between them Buffer zone, any area that keeps two or more other areas distant from one another, may be demilitarized Buffer (rail transport... Look up RAM, Ram, ram in Wiktionary, the free dictionary. ... A checksum is a form of redundancy check, a simple way to protect the integrity of data by detecting errors in data that are sent through space (telecommunications) or time (storage). ...


Logging and Transaction

SQL Server ensures that any changes to the data is ACID-compliant, i.e., it uses transactions to ensure that any operation either totally completes or is undone if fails, but never leave the database in an intermediate state. Using transactions, a sequence of actions can be grouped together, with the guarantee that either all actions will succeed or none will. SQL Server implements transactions using a write-ahead log. Any changes made to any page will update the in-memory cache of the page, simultaneously all the operations performed will be written to a log, along with the transaction ID which the operation was a part of. Each log entry is identified by an increasing Log Sequence Number (LSN) which ensure that no event overwrites another. SQL Server ensures that the log will be written onto the disc before the actual page is written back. This enables SQL Server to ensure integrity of the data, even if the system fails. If both the log and the page were written before the failure, the entire data is on persistent storage and integrity is ensured. If only the log was written (the page was either not written or not written completely), then the actions can be read from the log and repeated to restore integrity. If the log wasn't written, then also the integrity is maintained, even though the database is in a state when the transaction as if never occurred. If it was only partially written, then the actions associated with the unfinished transaction is discarded. Since the log was only partially written, the page is guaranteed to have not been written. So, the data is still in a consistent state. Removing the unfinished log entries means as if undoes the transaction. SQL Server ensures consistency between the log and the data every time an instance is restarted.[1] For other uses, see Acid (disambiguation). ... A database transaction is a unit of interaction with a database management system or similar system that is treated in a coherent and reliable way independent of other transactions. ...


Concurrency and locking

SQL Server allows multiple clients to use the same database concurrently. As such, it needs to control concurrent access to shared data, to ensure data integrity - when multiple clients update the same data, or clients attempt to read data that is in the process of being changed by another client. SQL Server provides two modes of concurrency control: pessimistic concurrency and optimistic concurrency. When pessimistic concurrency control is being used, SQL Server controls concurrent access by using locks. Locks can be either shared or exclusive. Exclusive lock grants the user exclusive access to the data - no other user can access the data as long as the lock is held. Shared locks are used when some data is being read - multiple users can read from data locked with a shared lock, but not acquire an exclusive lock. The latter would have to wait for all shared locks to be released. Locks can be applied on different levels of granularity - on entire tables, pages, or even on a per-row basis on tables. For indexes, it can either be on the entire index or on index leaves. The level of granularity to be used is defined on a per-database basis by the database administrator. While a fine grained locking system allows more users to use the table or index simultaneously, it requires more resources. So it does not automatically turn into higher performing solution. SQL Server also includes two more lightweight mutual exclusion solutions - latches and spinlocks - which are less robust than locks but are less resource intensive. SQL Server uses them for DMVs and other resources that are usually not busy. SQL Server also monitors all worker threads that acquire locks to ensure that they do not end up in deadlocks - in case they do, SQL Server takes remedial measures, which in many cases is to kill one of the threads entangled in a deadlock and rollback the transaction it started.[1] To implement locking, SQL Server contains the Lock Manager. The Lock Manager maintains an in-memory table that manages the database objects and locks, if any, on them along with other metadata about the lock. Access to any shared object is mediated by the lock manager, which either grants access to the resource or blocks it. Mutual exclusion (often abbreviated to mutex) algorithms are used in concurrent programming to avoid the simultaneous use of un-shareable resources by pieces of computer code called critical sections. ... This article is about deadlock in computing. ...


SQL Server also provides the optimistic concurrency control mechanism. Also called multi version concurrency control, it allows a new version of a row to be created whenever the row is updated, as opposed to overwriting the row, i.e., a row is additionally identified by the ID of the transaction that created the version of the row. Both the old as well as the new versions of the row are stored and maintained, though the old versions are moved out of the database into a system database identified as Tempdb. When a row is in the process of being updated, any other requests are not blocked (unlike locking) but are executed on the older version of the row. If the other request is an update statement, it will result in two different versions of the rows - both of them will be stored by the database, identified by their respective transaction IDs.[1]


Data retrieval

The main mode of retrieving data from an SQL Server database is querying for it. The query is expressed using a variant of SQL called T-SQL, a dialect Microsoft SQL Server shares with Sybase SQL Server due to its legacy. The query declaratively specifies what is to be retrieved. It is processed by the query processor, which figures out the sequence of steps that will be necessary to retrieve the requested data. The sequence of actions necessary to execute a query is called a query plan. There might be multiple ways to process the same query. For example, for a query that contains a join statement and a select statement, executing join on both the tables and then executing select on the results would give the same result as selecting from each table and then executing the join, but result in different execution plans. In such case, SQL Server chooses the plan that is supposed to yield the results in the shortest possible time. This is called query optimization and is performed by the query processor itself.[1] Wikipedia does not yet have an article with this exact name. ... SQL (IPA: or ) is a computer language designed for the retrieval and management of data in relational database management systems, database schema creation and modification, and database object access control management. ... Transact-SQL (TSQL) is an enhanced version of the SQL relational database language. ... Sybase SQL Server was the name of Sybase Corporations primary relational database management system product from 1987 to 1995. ... In computer science, a declarative programming language is a high-level language that describes a problem rather than defining a solution — it makes use of declarative programming. ... A JOIN clause in SQL combines records from two tables in a relational database and results in a new (temporary) table, also called a joined table. Structured Query Language (SQL:2003) specifies two types of joins: inner and outer. ... An SQL SELECT statement returns a result set of records from one or more tables. ... Query optimization is a function of many relational database management systems in which multiple query plans for satisfying a query are examined and a good query plan is identified. ...


SQL Server includes a cost-based query optimizer which tries to optimize on the cost, in terms of the resources it will take to execute the query. Given a query, the query optimizer looks at the database schema, the database statistics and the system load at that time. It then decides which sequence to access the tables referred in the query, which sequence to execute the operations and what access method to be used to access the tables. For example, if the table has an associated index, whether the index should be used or not - if the index is on a column which is not unique for most of the columns (low "selectivity"), it might not be worthwhile to use the index to access the data. Finally, it decides whether to execute the query concurrently or not. While a concurrent execution is more costly in terms of total processor time, because the execution is actually split to different processors might mean it will execute faster. Once a query plan is generated for a query, it is temporarily cached. For further invocations of the same query, the cached plan is used. Unused plans are discarded after some time.[1][7] The word schema comes from the Greek word σχήμα (skhēma) that means shape or more generally plan. ... Concurrent computing is the concurrent (simultaneous) execution of multiple interacting computational tasks. ...


SQL Server also allows stored procedures to be defined. Stored procedures are parameterized T-SQL queries, that are stored in the server itself (and not issued by the client application as is the case with general queries). Stored procedures can accept values sent by the client as input parameters, and send back results as output parameters. They can also call other stored procedures, and can be selectively provided access to. Unlike other queries, stored procedures have an associated name, which is used at runtime to resolve into the actual queries. Also because the code need not be sent from the client every time (as it can be accessed by name), it reduces network traffic and somewhat improves performance.[8] Execution plans for stored procedures are also cached as necessary. A stored procedure is a subroutine available to applications accessing a relational database system. ... Access control is the ability to permit or deny the use of something by someone. ...


SQL CLR

Main article: SQL CLR

Microsoft SQL Server 2005 includes a component named SQL CLR via which it integrates with .NET Framework. Unlike most other applications that leverage .NET Framework functionality, SQL Server itself hosts the .NET Framework runtime, i.e., memory, threading and resource management requirements of .NET Framework are satisfied by SQLOS itself, rather than the underlying Windows operating system. SQLOS provides deadlock detection and resolution services for .NET code as well. With SQL CLR, stored procedures and triggers can be written in any managed .NET language, including C# and VB.NET. Managed code can also be used to define UDTs which can be persisted in the database. Managed code is compiled to .NET assemblies and after being verified for type safety, registered at the database. After that, they can be invoked like any other procedure.[9] However, only a subset of the Base Class Library is available, when running code under SQL CLR. Most APIs relating to user interface functionality is not available.[9] SQL CLR or SQLCLR (SQL Common Language Runtime) is technology for hosting of the Microsoft . ... The Microsoft . ... The Microsoft . ... The Microsoft . ... The Common Language Runtime (CLR) is the virtual machine component of Microsofts . ... A stored procedure is a subroutine available to applications accessing a relational database system. ... A database trigger is procedural code that is automatically executed in response to certain events on a particular table in a database. ... In Microsoft Windows terminology, managed code is computer instructions — that is, code — executed by a CLI-compliant virtual machine, such as Microsofts . ... . ... The title given to this article is incorrect due to technical limitations. ... Visual Basic . ... In Microsoft Windows terminology, managed code is computer instructions — that is, code — executed by a CLI-compliant virtual machine, such as Microsofts . ... In computer science, object composition (not to be confused with function composition) is a way and practice to combine simple objects or data types into more complex ones. ... In Microsoft Windows terminology, managed code is computer instructions — that is, code — executed by a CLI-compliant virtual machine, such as Microsofts . ... For the counterpart to assembly language in the Microsoft . ... In computer science, a programming language is type safe when the language does not permit the programmer to treat a value as a type to which it does not belong. ... The Base Class Library (BCL) is a library of types and functionalities available to all languages using the . ... The user interface is the part of a system exposed to users. ...


When writing code for SQL CLR, data stored in SQL Server databases can be accessed using the ADO.NET APIs like any other managed application that accesses SQL Server data. However, doing that creates a new database session, different from the one in which the code is executing. To avoid this, SQL Server provides some enhancements to the ADO.NET provider that allows the connection to be redirected to the same session which already hosts the running code. Such connections are called context connections and are set by setting context connection parameter to true in the connection string. SQL Server also provides several other enhancements to the ADO.NET API, including classes to work with tabular data or a single row of data as well as classes to work with internal metadata about the data stored in the database. It also provides access to the XML features in SQL Server, including XQuery support. These enhancements are available only when running code under SQL CLR, and not available generally.[10][11] ADO.NET is a set of computer software components that can be used by programmers to access data and data services. ... API may refer to: In computing, application programming interface In petroleum industry, American Petroleum Institute In education, Academic Performance Index This page concerning a three-letter acronym or abbreviation is a disambiguation page — a navigational aid which lists other pages that might otherwise share the same title. ... In Microsoft Windows terminology, managed code is computer instructions — that is, code — executed by a CLI-compliant virtual machine, such as Microsofts . ... ADO.NET is a set of computer software components that can be used by programmers to access data and data services. ... ADO.NET is a set of computer software components that can be used by programmers to access data and data services. ...


Services

SQL Server also includes an assortment of add-on services. While these are not essential for the operation for the database system, these provide value added services on top of the core database management system. These services either run as a part of some SQL Server component or out-of-process as Windows Service and presents their own API to control and interact with them. A Windows service is an application that starts when the Microsoft Windows operating system is booted and runs in the background as long as Windows is running. ... API may refer to: In computing, application programming interface In petroleum industry, American Petroleum Institute In education, Academic Performance Index This page concerning a three-letter acronym or abbreviation is a disambiguation page — a navigational aid which lists other pages that might otherwise share the same title. ...


Service Broker

The Service Broker, which runs as a part of the database engine, provides a reliable messaging and message queuing platform for SQL Server applications. Used inside an instance, it is used to provide an asynchronous programming environment. For cross instance applications, Service Broker communicates over TCP/IP and allows the different components to be synchronized together, via exchange of messages.[12] In computer science, a message queue is a software-engineering component used for interprocess communication or inter-thread communication within the same process. ... The Internet protocol suite is the set of communications protocols that implement the protocol stack on which the Internet runs. ...


Replication Services

SQL Server Replication Services are used by SQL Server to replicate and synchronize database objects, either in entirety or a subset of the objects present, across replication agents, which might be other database servers across the network, or database caches on the client side. Replication follows a publisher/subscriber model, i.e., the changes are sent out by one database server ("publisher") and are received by others ("subscribers"). SQL Server supports three different types of replication:[13]

Transaction replication
Each transaction made to the publisher database (master database) is synced out to subscribers, who update their databases with the transaction. Transactional replication synchronizes databases in near real time.[14]
Merge replication
Changes made at both the publisher and subscriber databases are tracked, and periodically the changes are synchronized bi-directionally between the publisher and the subscribers. If the same data has been modified differently in both the publisher and the subscriber databases, synchronization will result in a conflict which has to be resolved - either manually or by using pre-defined policies.[15]
Snapshot replication
Snapshot replication published a copy of the entire database (the then-snapshot of the data) and replicates out to the subscribers. Further changes to the snapshot are not tracked.[16]

Analysis Services

SQL Server Analysis Services adds OLAP and data mining capabilities for SQL Server databases. The OLAP engine supports MOLAP, ROLAP and HOLAP storage modes for data. Analysis Services supports the XML for Analysis standard as the underlying communication protocol. The cube data can be accessed using MDX queries.[17] Data mining specific functionality is exposed via the DMX query language. Analysis Services includes various algorithms - Decision trees, clustering algorithm, Naive Bayes algorithm, time series analysis, sequence clustering algorithm, linear and logistic regression analysis, and neural networks - for use in data mining.[18] See Analysis Services ... On Line Analytical Processing, or OLAP, is an approach to quickly provide answers to analytical queries that are dimensional in nature. ... Data mining is the principle of sorting through large amounts of data and picking out relevant information. ... MOLAP stands for Multidimensional Online Analytical Processing. ... ROLAP stands for Relational Online Analytical Processing. ... HOLAP (Hybrid Online Analytical Process) is a combination of ROLAP and MOLAP which are other possible implementation of OLAP. HOLAP allows to store part of the data in the MOLAP store and another part of the data in ROLAP store. ... XML for Analysis (abbreviated as XMLA) is the industry standard for data access in analytical systems, such as OLAP and Data Mining. ... Multidimensional Expressions (MDX) is a query language for OLAP databases, much like SQL is a query language for relational databases. ... Data Mining Extensions (DMX) is a query language for Data Mining Models, much like SQL is a query language for relational databases and MDX is a query language for OLAP databases. ... In operations research, specifically in decision analysis, a decision tree is a decision support tool that uses a graph or model of decisions and their possible consequences, including chance event outcomes, resource costs, and utility. ... A naive Bayes classifier (also known as Idiots Bayes) is a simple probabilistic classifier. ... Generally, regression is related to moving backwards, and the opposite of progression. ... // Traditionally, the term neural network had been used to refer to a network or circuitry of biological neurons. ...


Reporting Services

SQL Server Reporting Services is a report generation environment for data gathered from SQL Server databases. It is administered via a web interface. Reporting services features a web services interface to support the development of custom reporting applications. Reports are created as RDL files.[19] TomTheHand 18:49, 13 January 2006 (UTC) Category: ... WWWs historical logo designed by Robert Cailliau The World Wide Web (commonly shortened to the Web) is a system of interlinked, hypertext documents accessed via the Internet. ... A web service is a collection of protocols and standards used for exchanging data between applications. ... Report Definition Language is a standard used for defining reports. ...


Reports can be designed using recent versions of Microsoft Visual Studio(including Visual Studio.NET 2003 onwards) with Business Intelligence Development Studio, installed or with the included Report Builder. Once created, RDL files can be rendered in a variety of formats[20] including Excel, PDF, CSV, XML, TIFF (and other image formats[21]), and HTML Web Archive. Microsoft Visual Studio is Microsofts flagship software development product for computer programmers. ... Business Intelligence Development Studio (BIDS) is the IDE from Microsoft used for developing data analysis and Business Intelligence solutions utilizing the Microsoft SQL Server Analysis Services, Reporting Services and Integration Services. ... PDF is an abbreviation with several meanings: Portable Document Format Post-doctoral fellowship Probability density function There also is an electronic design automation company named PDF Solutions. ... The comma-separated values (or CSV; also known as a comma-separated list or comma-separated variables) file format is a file type that stores tabular data. ... The Extensible Markup Language (XML) is a general-purpose markup language. ... This article is about TIFF, the computer image format. ...


Notification Services

SQL Server Notification Services is a platform for generating notifications, which are sent to Notification Services subscribers. A subscriber registers for a specific event or transaction (which is registered on the database server as a trigger); when the event occurs, Notification Services uses Service Broker to send a message to the subscriber informing about the occurrence of the event.[22] TomTheHand 19:11, 13 January 2006 (UTC) Category: ...


Integration Services

SQL Server Integration Services is used to integrate data from different data sources. It is used for the ETL capabilities for SQL Server for data warehousing needs. Integration Services includes GUI tools to build data extraction workflows integration various functionality such as extracting data from various sources, querying data, transforming data including aggregating, duplication and merging data, and then loading the transformed data onto other sources, or sending e-mails detailing the status of the operation.[23] SQL Server Integration Services (SSIS) is a component of Microsoft SQL Server 2005. ... ETL also means Express Toll Lanes, see Express Toll Lanes. ... A data warehouse is the main repository of an organizations historical data, its corporate memory. ... A workflow is a reliably repeatable pattern of activity enabled by a systematic organization of resources, defined roles and mass, energy and information flows, into a work process that can be documented and learned. ... It has been suggested that Eddress be merged into this article or section. ...


Full Text Search Service

Main article: SQL Server Full Text Search
The SQL Server Full Text Search service architecture
The SQL Server Full Text Search service architecture

SQL Server Full Text Search service is a specialized indexing and querying service for unstructured text stored in SQL Server databases. The full text search index can be created on any column with character based text data. It allows for words to be searched for in the text columns. While it can be performed with the SQL LIKE operator, using SQL Server Full Text Search service can be more efficient. Full Text Search (FTS) allows for inexact matching of the source string, indicated by a Rank value which can range from 0 to 1000 - a higher rank means a more accurate match. It also allows linguistic matching ("inflectional search"), i.e., linguistic variants of a word (such as a verb in a different tense) will also be a match for a given word (but with a lower rank than an exact match). Proximity searches are also supported, i.e., if the words searched for do not occur in the sequence they are specified in the query but are near each other, they are also considered a match. T-SQL exposes special operators that can be used to access the FTS capabilities.[24][25] SQL Server Full Text Search is an inexact string matching technology for SQL Server. ... Image File history File links SQL_Server_FTS.svg‎ File historyClick on a date/time to view the file as it appeared at that time. ... Image File history File links SQL_Server_FTS.svg‎ File historyClick on a date/time to view the file as it appeared at that time. ...


The Full Text Search engine is divided into two processes - the Filter Daemon process (msftefd.exe) and the Search process (msftesql.exe). These processes interact with the SQL Server. The Search process includes the indexer (that creates the full text indexes) and the full text query processor. The indexer scans through text columns in the database. It can also index through binary columns, and use iFilters to extract meaningful text from the binary blob (for example, when a Microsoft Word document is stored as an unstructured binary file in a database). The iFilters are hosted by the Filter Daemon process. Once the text is extracted, the Filter Daemon process breaks it up into a sequence of words and hands it over to the indexer. The indexer filters out noise words, i.e., words like A, And etc, which occur frequently and are not useful for search. With the remaining words, an inverted index is created, associating each word with the columns they were found in. SQL Server itself includes a Gatherer component that monitors changes to tables and invokes the indexer in case of updates.[26] The IFilter interface scans documents for text and properties (also called attributes). ... Microsoft Word is Microsofts flagship word processing software. ... An inverted index is an index structure storing a mapping from words to their locations in a document or a set of documents, giving full text search. ...


When a full text query is received by the SQL Server query processor, it is handed over to the FTS query processor in the Search process. The FTS query processor breaks up the query into the constituent words, filters out the noise words, and uses an inbuilt thesaurus to find out the linguistic variants for each word. The words are then queried against the inverted index and a rank of their accurateness is computed. The results are returned to the client via the SQL Server process.[26] For the American rapper, see TheSaurus (rapper). ...


History

Genesis

SQL Server Release History
Version Year Release Name Codename
4.21
(WinNT)
1993 SQL Server 4.21 -
6.0 1995 SQL Server 6.0 SQL95
6.5 1996 SQL Server 6.5 Hydra
7.0 1999 SQL Server 7.0 Sphinx
- 1999 SQL Server 7.0
OLAP Tools
Plato
8.0 2000 SQL Server 2000 Shiloh
8.0 2003 SQL Server 2000
64-bit Edition
Liberty
9.0 2005 SQL Server 2005 Yukon
10.0 2008 SQL Server 2008 Katmai

The code base for MS SQL Server (prior to version 7.0) originated in Sybase SQL Server, and was Microsoft's entry to the enterprise-level database market, competing against Oracle, IBM, and, later, Sybase itself. Microsoft, Sybase and Ashton-Tate originally teamed up to create and market the first version named SQL Server 1.0 for OS/2 (about 1989) which was essentially the same as Sybase SQL Server 3.0 on Unix, VMS, etc. Microsoft SQL Server 4.2 was shipped around 1992 (available bundled with Microsoft OS/2 version 1.3). Later Microsoft SQL Server 4.21 for Windows NT was released at the same time as Windows NT 3.1. Microsoft SQL Server v6.0 was the first version of SQL Server that was architected for NT and did not include any direction from Sybase. Windows NT (New Technology) is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. ... On Line Analytical Processing, or OLAP, is an approach to quickly provide answers to analytical queries that are dimensional in nature. ... The code base of a computer program is the source code that implements a programs core functionality. ... Sybase SQL Server was the name of Sybase Corporations primary relational database management system product from 1987 to 1995. ... The term Oracle database may refer either to the database management system (DBMS) software released by Oracle Corporation as Oracle RDBMS, or to any of the individual databases managed by such software. ... International Business Machines Corporation (IBM, or colloquially, Big Blue) (NYSE: IBM) (incorporated June 15, 1911, in operation since 1888) is headquartered in Armonk, New York, USA. The company manufactures and sells computer hardware, software, and services. ... Sybase Inc. ... Ashton-Tate (Ashton-Tate Corporation) was a US based software company best known for developing the popular dBASE database application. ... To meet Wikipedias quality standards, this article or section may require cleanup. ... Filiation of Unix and Unix-like systems Unix (officially trademarked as UNIX®, sometimes also written as or ® with small caps) is a computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs including Ken Thompson, Dennis Ritchie and Douglas McIlroy. ... OpenVMS V7. ... To meet Wikipedias quality standards, this article or section may require cleanup. ...


About the time Windows NT was released, Sybase and Microsoft parted ways and pursued their own design and marketing schemes. Microsoft negotiated exclusive rights to all versions of SQL Server written for Microsoft operating systems. Later, Sybase changed the name of its product to Adaptive Server Enterprise to avoid confusion with Microsoft SQL Server. Until 1994 Microsoft's SQL Server carried three Sybase copyright notices as an indication of its origin. Windows NT (New Technology) is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. ... Adaptive Server Enterprise (ASE) is Sybase Corporations flagship relational database management system product. ...


Since parting ways, several revisions have been done independently. SQL Server 7.0 was the first true GUI based database server and was a rewrite from the legacy Sybase code. It was succeeded by SQL Server 2000, which was the first edition to be launched in a variant for the IA-64 architecture. GUI can refer to the following: GUI is short for graphical user interface, a term used to describe a type of interface in computing. ... In computing, IA-64 (short for Intel Architecture-64) is a 64-bit processor architecture developed cooperatively by Intel Corporation and Hewlett-Packard (HP), and implemented in the Itanium and Itanium 2 processors. ...


In the six years since release of Microsoft's previous SQL Server product (SQL Server 2000), advancements have been made in performance, the client IDE tools, and several complementary systems that are packaged with SQL Server 2005. These include: an ETL tool (SQL Server Integration Services or SSIS), a Reporting Server, an OLAP and data mining server (Analysis Services), and several messaging technologies, specifically Service Broker and Notification Services. ETL also means Express Toll Lanes, see Express Toll Lanes. ... SQL Server Integration Services (SSIS) is a component of Microsoft SQL Server 2005. ... On Line Analytical Processing, or OLAP, is an approach to quickly provide answers to analytical queries that are dimensional in nature. ... Data mining is the principle of sorting through large amounts of data and picking out relevant information. ... Microsoft Analysis Services is a group of OLAP and Data Mining services provided in Microsoft SQL Server. ...


SQL Server 2005

SQL Server 2005, released in November 2005, is the successor to SQL Server 2000. It included native support for managing XML data, in addition to relational data. For this purpose, it defined an xml data type that could be used either as a data type in database columns or as literals in queries. XML columns can be associated with XSD schemas; XML data being stored is verified against the schema. XML is converted to an internal binary data type before being stored in the database. Specialized indexing methods were made available for XML data. XML data is queried for using XQuery; SQL Server 2005 added some extensions to the T-SQL language to allow embedding XQuery queries in T-SQL. In addition, it also defines a new extension to XQuery, called XML DML, that allows query-based modifications to XML data. SQL Server 2005 also allows a database server to be exposed over web services using TDS packets encapsulated within SOAP request; when the data is access over web services, results are returned as XML.[27] The Extensible Markup Language (XML) is a general-purpose markup language. ... A relational database is a database that conforms to the relational model, and refers to a databases data and schema (the databases structure of how that data is arranged). ... An XML Schema Definition (XSD) is an instance of a W3C XML Schema. ... XQuery is a query language (with some programming language features) that is designed to query collections of XML data. ... Transact-SQL (TSQL) is an enhanced version of the SQL relational database language. ... Web services architecture The W3C defines a Web service (many sources also capitalize the second word, as in Web Services) as a software system designed to support interoperable Machine to Machine interaction over a network. ... A collection of decorative soaps used for human hygiene purposes. ...


For relational data, T-SQL has been augmented with error handling features and support for recursive queries. SQL Server 2005 has also been enhanced with new indexing algorithms and better error recovery systems. Data pages are checksummed for better error resiliency, and optimistic concurrency support has been added for better performance. Permissions and access control has been made more granular and the query processor handles concurrent execution of queries in a more efficient way. Partitions on tables and indexes are supported natively, so scaling out a database onto a cluster is easier. SQL CLR was introduced with SQL Server 2005 to let it integrate with .NET Framework.[28] Transact-SQL (TSQL) is an enhanced version of the SQL relational database language. ... A checksum is a form of redundancy check, a simple way to protect the integrity of data by detecting errors in data that are sent through space (telecommunications) or time (storage). ... Linux Cluster at Purdue University A computer cluster is a group of locally connected computers that work together as a unit. ... The Microsoft . ...


SQL Server 2008

The next version of SQL Server is SQL Server 2008,[29] code-named "Katmai",[30] slated to launch on February 27, 2008 and release (RTM) in Q2 2008.[31] The most recent CTP was made available in November of 2007. SQL Server 2008 aims[32] to make data management self-tuning, self organizing, and self maintaining with the development of SQL Server Always On technologies, to provide near-zero downtime. SQL Server 2008 will also include support for structured and semi-structured data, including digital media formats for pictures, audio, video and other multimedia data. In current versions, such multimedia data can be stored as BLOBs (binary large objects), but they are generic bitstreams. Intrinsic awareness of multimedia data will allow specialized functions to be performed on them. Other new data types include specialized date and time types and a Spatial data type for location-dependent data.[33] Better support for unstructured and semi-structured data is provided as well. For unstructured data, specialized data types, including the File[33] and FILESTREAM[34] types have been added, with the latter used to reference any file stored on the file system for management with SQL Server.[35] According to Paul Flessner, senior Vice President, Server Applications, Microsoft Corp., SQL Server 2008 can be a data storage backend for different varieties of data: XML, email, time/calendar, file, document, spatial, etc as well as perform search, query, analysis, sharing, and synchronization across all data types.[30] Image File history File links Gnome_globe_current_event. ... Software redirects here. ... Software development stages In computer programming, development stage terminology expresses how the development of a piece of software has progressed and how much further development it may require. ... Image File history File links Nuvola_apps_kpager. ... is the 58th day of the year in the Gregorian calendar. ... 2008 (MMVIII) will be a leap year starting on Tuesday of the Anno Domini (common) era, in accordance with the Gregorian calendar. ... A self-tuning system is capable of optimizing its own internal running parameters in order to maximize or minimize the fulfillment of an objective function; typically efficiency or error. ... A binary tree, a simple type of branching linked data structure. ... A blob is a collection of binary data stored as a single entity in a database management system. ... Microsoft Corporation, (NASDAQ: MSFT, HKSE: 4338) is a multinational computer technology corporation with global annual revenue of US$44. ...


Spatial data will be stored in two types. A "Flat Earth" (GEOMETRY or planar) data type represents geospatial data which has been projected from its native, spherical, coordinate system into a plane A "Round Earth" data type (GEOGRAPHY) uses an ellipsoidal model in which the Earth is defined as a single continuous entity which does not suffer from the singularities such as the international dateline, poles, or map projection zone "edges". Approximately 70 methods will be available when SQL Server "Katmai" ships to represent spatial operations for the Open Geospatial Consortium Simple Features for SQL, Version 1.1[36]. The Open Geospatial Consortium, or OGC, is an international voluntary consensus standards organization. ...


On the management side, SQL Server 2008 will include the Declarative Management Framework which allows configuring policies and constraints, on the entire database or certain tables, declaratively.[33] For data warehousing needs, SQL Server includes better compression features, which also helps in improving scalability. It also includes Resource Governor that allows reserving resources for certain users or workflows. It will also include capabilities for transparent encryption of data as well as compression of backups.[34] SQL Server Katmai will support the ADO.NET Entity Framework and the reporting tools, replication, and data definition will be build around the Entity Data Model.[37] SQL Server Reporting Services will gain charting capabilities from the integration of the data visualization products from Dundas Data Visualization Inc., which was acquired by Microsoft.[38] SQL Server 2008 will also make the databases available via Windows PowerShell providers and management functionality available as Cmdlets, so that the server and all the running instances can be managed from Windows PowerShell.[39] A data warehouse is the main repository of an organizations historical data, its corporate memory. ... Encrypted filesystem can mean: A filesystem with filesystem-level encryption support A filesystem that resides on an encrypted disk or partition, see full disk encryption Encrypting File System (EFS), the encryption subsystem of NTFS Category: ... ADO.NET is a set of computer software components that can be used by programmers to access data and data services. ... The ADO.NET Entity Framework, part of ADO.NET components of the . ... TomTheHand 18:49, 13 January 2006 (UTC) Category: ... Windows PowerShell is an administration focused extensible command line interface (CLI) shell and scripting language product developed by Microsoft. ... Windows PowerShell is an administration focused extensible command line interface (CLI) shell and scripting language product developed by Microsoft. ...


Editions

Micrsoft makes SQL Server available in multiple versions, with different feature sets and targeting different users. These versions are:[40][1]

SQL Server Express Edition
SQL Server Express Edition is a scaled down, free edition of SQL Server, which includes the core database engine. While there are no limitations on the number of databases or users supported, it is limited to using one processor, 1 GB memory and 2 GB database files. The entire database is stored in a single .mdf file, and thus making it suitable for XCOPY deployment. It is intended as a replacement for MSDE. The Full-Text Search Service is made available as a free add-on to SQL Server Express edition as well. In addition, a stripped down version of SQL Server Management Studio is also available for this edition.
SQL Server Workgroup Edition
SQL Server Workgroup Edition includes the core database functionality but does not include the additional services.
SQL Server Standard Edition
SQL Server Standard edition includes the core database engine, along with the stand-alone services. It differs from Enterprise edition in that it supports less number of active instances (number of nodes in a cluster) and does not include some high-availability functions such as hot-add memory (allows memory to be added while the server is still running), and parallel indexes.
SQL Server Enterprise Edition
SQL Server Enterprise Edition is the full-featured version of SQL Server, including both the core databse engine and add-on services, while including a range of tools for creating and managing an SQL Server cluster.
SQL Server Developer Edition
SQL Server Developer Edition includes the same features as SQL Server Enterprise Edition, but is limited by the license to be only used as a development and test system, and not as production server.

This article needs additional references or sources for verification. ... MSDE stands for Microsoft Data Engine, Microsoft Desktop Engine or Microsoft SQL Server Desktop Engine. ...

Tools

SQLCMD

SQLCMD is a command line application that comes with Microsoft SQL Server, and exposes the management features of SQL Server. It allows SQL queries to be written and executed from the command prompt. It can also act as a scripting language to create and run a set of SQL statements as a script. Such scripts are stored as a .sql file, and are used either for management of databases or to create the database schema during the deployment of a database. Scripting languages (commonly called script languages) are computer programming languages that are typically interpreted. ...


Visual Studio

Microsoft Visual Studio includes native support for data programming with Microsoft SQL Server. It can be used to write and debug code to be executed by SQL CLR. It also includes a data designer that can be used to graphically create, view or edit database schemas. Queries can be created either visually or using code. Visual Studio 2008 onwards, Visual Studio provides intellisense for SQL queries as well. Microsoft Visual Studio is Microsofts flagship software development product for computer programmers. ... Microsoft Visual Studio is Microsofts flagship software development product for computer programmers. ... Screenshot of IntelliSense in Visual C++ IntelliSenseâ„¢ is a form of automated autocompletion popularized by the Microsoft Visual Studio Integrated Development Environment. ...


SQL Server Management Studio

Microsoft SQL Server Management Studio showing a query, the results of the query, and the Object Explorer pane while connected to a SQL Server database engine instance.
Microsoft SQL Server Management Studio showing a query, the results of the query, and the Object Explorer pane while connected to a SQL Server database engine instance.

SQL Server Management Studio is a GUI tool included with SQL Server 2005 for configuring, managing, and administering all components within Microsoft SQL Server. The tool includes both script editors and graphical tools which work with objects and features of the server.[41] A version of SQL Server Management Studio is also available for SQL Server Express Edition, for which it is known as SQL Server Management Studio Express (SSMSE). [42] Image File history File links Size of this preview: 732 × 600 pixelsFull resolution‎ (1,168 × 957 pixels, file size: 157 KB, MIME type: image/jpeg) Screen shot of commercial software used to illustrate article about that software This is a screenshot of copyrighted computer software, and the copyright for its... Image File history File links Size of this preview: 732 × 600 pixelsFull resolution‎ (1,168 × 957 pixels, file size: 157 KB, MIME type: image/jpeg) Screen shot of commercial software used to illustrate article about that software This is a screenshot of copyrighted computer software, and the copyright for its... GUI can refer to the following: GUI is short for graphical user interface, a term used to describe a type of interface in computing. ...


A central feature of SQL Server Management Studio is the Object Explorer, which allows the user to browse, select, and act upon any of the objects within the server.[43] It can be used to visually observe and analyze query plans and optimize the database performance, among others. [44] SQL Server Management Studio can also be used to create a new database, alter any existing database schema by adding or modifying tables and indexes or analyze performance. It includes the query windows which provides a GUI based interface to write and execute queries.[1]


Business Intelligence Development Studio

Business Intelligence Development Studio (BIDS) is the IDE from Microsoft used for developing data analysis and Business Intelligence solutions utilizing the Microsoft SQL Server Analysis Services, Reporting Services and Integration Services. It is based on the Microsoft Visual Studio development environment but customizes with the SQL Server services-specific extensions and project types, including tools, controls and projects for reports (using Reporting Services) and data mining structures such as Cubes, Roles and Multidimensional views (using Analysis Services).[45] An integrated development environment (IDE), also known as integrated design environment and integrated debugging environment, is a programming environment that has been packaged as an application program,that assists computer programmers in developing software. ... Microsoft Corporation, (NASDAQ: MSFT, HKSE: 4338) is a multinational computer technology corporation with global annual revenue of US$44. ... The term business intelligence (BI) dates to 1958. ... See Analysis Services ... TomTheHand 18:49, 13 January 2006 (UTC) Category: ... SQL Server Integration Services (SSIS) is a component of Microsoft SQL Server 2005. ... Microsoft Visual Studio is Microsofts flagship software development product for computer programmers. ... Data mining is the principle of sorting through large amounts of data and picking out relevant information. ... OLAP (on-line analytical processing) was a term coined by E.F. Codd & Associates published a white paper in 1994, commissioned by Arbor Software (now Hyperion Solutions), entitled ‘Providing OLAP (On-line Analytical Processing) to User-Analysts: An IT Mandate’. (see also article on OLAP). ...


Programmability

T-SQL

Main article: T-SQL

T-SQL (Transact-SQL) is the primary means of programming and managing SQL Server. It exposes keywords for the operations that can be performed on SQL Server, including creating and altering database schemas, entering and editing data in the database as well as monitoring and managing the server itself. Client applications, both which consume data or manage the server, leverage SQL Server functionality by sending T-SQL queries and statements which are then processed by the server and results (or errors) returned to the client application. SQL Server allows it to be managed using T-SQL. For this it exposes read only tables from which server statistics can be read. Management functionality is exposed via system-defined stored procedures which can be invoked from T-SQL queries to perform the management operation.[46] Transact-SQL (TSQL) is an enhanced version of the SQL relational database language. ...


SQL Native Client

SQL Native Client is the native client side data access library for Microsoft SQL Server, version 2005 onwards. It natively implements support for the SQL Server features including the TDS implementation, support for mirrored SQL Server databases, full support for all data types supported by SQL Server, asynchronous operations, query notifications, encryption support, as well as receiving multiple result sets in a single database session. SQL Native Client is used under the hood by SQL Server plug-ins for other data access technologies, including ADO or OLE DB. It is also used by the native SQL Server ADO.NET provider, SqlClient. The SQL Native Client can also be directly used, bypassing the generic data access layers.[47] Illustration of an application which may use libvorbisfile. ... Encrypt redirects here. ... Microsoft ADO (ActiveX Data Objects) is a Component object model object for accessing data sources. ... OLE DB (sometimes written as OLEDB or OLE-DB), Object Linking and Embedding for Databases, is a means Microsoft use for accessing different types of data stores in a uniform manner. ... ADO.NET is a set of computer software components that can be used by programmers to access data and data services. ...


References

  1. ^ a b c d e f g h i j k l m n o p Kalen Delaney. Inside Microsoft SQL Server 2005: The Storage Engine. Microsoft Press. ISBN 0-7356-2105-5. 
  2. ^ a b c SQL Server Batch or Task Scheduling. Retrieved on 2007-12-02.
  3. ^ a b Memory Architecture. Retrieved on 2007-12-02.
  4. ^ Pages and Extents. Retrieved on 2007-12-02.
  5. ^ Table and Index Organization. Retrieved on 2007-12-02.
  6. ^ Buffer Management. Retrieved on 2007-12-02.
  7. ^ Single SQL Statement Processing. Retrieved on 2007-12-03.
  8. ^ Stored Procedure Basics. Retrieved on 2007-12-03.
  9. ^ a b Overview of CLR integration. Retrieved on 2007-12-03.
  10. ^ Data Access from CLR Database Objects. Retrieved on 2007-12-03.
  11. ^ SQL Server In-Process Specific Extensions to ADO.NET. Retrieved on 2007-12-03.
  12. ^ Introducing Service Broker. Retrieved on 2007-12-03.
  13. ^ Types of Replication Overview. Retrieved on 2007-12-03.
  14. ^ Transactional Replication Overview. Retrieved on 2007-12-03.
  15. ^ Merge Replication Overview. Retrieved on 2007-12-03.
  16. ^ Snapshot replication Overview. Retrieved on 2007-12-03.
  17. ^ Analysis Services Architecture. Retrieved on 2007-12-03.
  18. ^ Data Mining Concepts. Retrieved on 2007-12-03.
  19. ^ SQL Server Reporting Services. Retrieved on 2007-12-03.
  20. ^ MSDN Library: Reporting Services Render Method - See Device Information Settings
  21. ^ Image Device Information Settings - SSRS can render BMP, EMF, GIF, JPEG, PNG, and TIFF.
  22. ^ Introducing SQL Server Notification Services. Retrieved on 2007-12-03.
  23. ^ Integration Services Overview. Retrieved on 2007-12-03.
  24. ^ Introduction to Full-Text Search. Retrieved on 2007-12-03.
  25. ^ Querying SQL Server using Full-Text Search. Retrieved on 2007-12-03.
  26. ^ a b Full-Text Search Architecture. Retrieved on 2007-12-03.
  27. ^ Database Engine XML Enancements. Retrieved on 2007-12-03.
  28. ^ Database Engine Enhancements. Retrieved on 2007-12-03.
  29. ^ Microsoft SQL Server 2008. Retrieved on 2007-04-06.
  30. ^ a b ChannelWeb: Next SQL Server stop: Katmai. Retrieved on 2005-11-05.
  31. ^ Nate Mook. New Windows Server, Visual Studio, SQL Server to Launch in February. BetaNews. Retrieved on 2007-07-11.
  32. ^ SQL Server 2005 Update from Paul Flessner. Retrieved on 2006-04-06.
  33. ^ a b c Microsoft Gives Peek At Next Version Of SQL Server. Retrieved on 2007-05-11.
  34. ^ a b One more test build to go for SQL Server 2008. Retrieved on 2006-11-13.
  35. ^ Guest Blogger: Ted Kummert. Retrieved on 2007-11-20.
  36. ^ Microsoft Shares Details on SQL Server 2008 Spatial Support by Directions Staff. Retrieved on 2007-09-07.
  37. ^ SQL Server "Katmai" to Deliver Entity Data Platform and Support LINQ. Retrieved on 2007-05-12.
  38. ^ Microsoft Details Dynamic IT Strategy at Tech-Ed 2007. Retrieved on 2007-06-04.
  39. ^ SQL Server Support for PowerShell!. Retrieved on 2007-12-03.
  40. ^ SQL Server 2005 Features Comparison. Retrieved on 2007-12-03.
  41. ^ MSDN: Introducing SQL Server Management Studio
  42. ^ SQL Server Management Studio Express
  43. ^ MSDN: Using Object Explorer
  44. ^ SQL Server 2005 Management Tools
  45. ^ Introducing Business Intelligence Development Studio. Retrieved on 2007-12-03.
  46. ^ Transact-SQL Reference. Retrieved on 2007-12-03.
  47. ^ Features of SQL Native Client. Retrieved on 2007-12-03.
  • Delaney, Kalen, et al (2007). Inside SQL Server 2005: Query Tuning and Optimization. Microsoft Press. ISBN 0735621969.
  • Ben-Gan, Itzik, et al (2006). Inside Microsoft SQL Server 2005: T-SQL Programming. Microsoft Press. ISBN 0735621977.

Microsoft Press is the publishing arm of Microsoft, usually releasing books dealing with various current Microsoft technologies. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 336th day of the year (337th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 336th day of the year (337th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 336th day of the year (337th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 336th day of the year (337th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 336th day of the year (337th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... BMP is an abbreviation for: Basic Multilingual Plane, the 16-bit base of the Unicode character set. ... Windows Metafile (WMF) is a graphics file format on Microsoft Windows systems, originally designed in the early 1990s and not commonly used after the rise of the Internet and the widely used graphics formats such as GIF and JPEG. It is a vector graphics format which also allows the inclusion... An example of a GIF image. ... JPG redirects here. ... PNG (Portable Network Graphics), sometimes pronounced as ping, is a relatively new bitmap image format that is becoming popular on the World Wide Web and elsewhere. ... This article is about TIFF, the computer image format. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 96th day of the year (97th in leap years) in the Gregorian calendar. ... Year 2005 (MMV) was a common year starting on Saturday (link displays full calendar) of the Gregorian calendar. ... is the 309th day of the year (310th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 192nd day of the year (193rd in leap years) in the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ... is the 96th day of the year (97th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 131st day of the year (132nd in leap years) in the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ... is the 317th day of the year (318th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 324th day of the year (325th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 250th day of the year (251st in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 132nd day of the year (133rd in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 155th day of the year (156th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era in the 21st century. ... is the 337th day of the year (338th in leap years) in the Gregorian calendar. ...

See also

  • SQL Server Compact

Microsoft SQL Server Compact (SSC or SQLce, previously codenamed SQL Server Everywhere Edition) is a compact relational database produced by Microsoft for applications that run on mobile devices and desktops. ...

External links


  Results from FactBites:
 
SQL Server Developer Center (763 words)
SQL Server is an end-to-end data management and analysis solution that helps you build, deploy, and manage enterprise applications.
SQL Server 2008 (formerly known as SQL Server code name "Katmai") is the next release of Microsoft SQL Server.
Server SP2 with Intel E6600 Dual core CPU and 4GB of RAM.
Microsoft SQL Server (3941 words)
SQL Server 2005 is the first viable, full-functioned data warehouse and business intelligence platform to be offered at a price that will make data warehousing and business intelligence available to a broad set of organizations.
SQL Server 2005 is a landmark release of Microsoft's powerful relational database management system for the Windows platform, and one that will change the way you architect your data systems and develop your data-driven applications.
SQL Server 2005 is a vast new release and each author provides practical, in-depth coverage of the core topics in their specialist areas – always illustrated with realistic examples.
  More results at FactBites »

 
 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:

 


Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m