Introduction to SQL Server

Introduction to SQL Server

30 Jul 2024
Beginner
146K Views
9 min read
Learn with an interactive course and practical hands-on labs

SQL Server Course

SQL Server: An Overview

Microsoft SQL Server is a Relational Database Management System(RDBMS) developed by Microsoft. It is designed to run on a central server so that multiple users can access the same data simultaneously. Generally, users access the database through an application. In this SQL Server tutorial, we'll understand the SQL Server from the basics covering its architecture, components, services, etc.

SQL Server Release History

Version
Year
Release Name
1.0 for OS/2
1989
SQL Server 1.0(16bit)
1.1 for OS/2
1991
SQL Server 1.1(16bit)
4.21 for WinNT
1993
SQL Server 4.21
6.0
1995
SQL Server 6.0
6.5
1996
SQL Server 6.4
7.0
1998
SQL Server 7.0
8.0
2000
SQL Server 2000
8.0
2003
SQL Server 2000 (64-bit)
9.0
2005
SQL Server 2005
10.0
2008
SQL Server 2008
10.5
2010
SQL Server 2008 R2

SQL Server Architecture

Read More: SQL Server Interview Questions and Answers

SQL Server Components

1. Protocol Layer

The protocol layer implements the external interface to SQL Server. TDS is an application layer protocol, that is used to transfer data between a database server and a client.

2. Data Storage

The main data storage unit is a database, which is a collection of data. The data in the SQL Server database is stored in primary data files with an extension .mdf and Secondary data files, with an extension .ndf extension are used to store optional metadata. Log files in SQL Server are recognized with the .ldf extension.

3. Buffer Management

SQL Server buffers pages in RAM to minimize disc Input/Output. An 8 KB page could be buffered in-memory and the set of all pages currently buffered is called the buffer cache. Based on available memory, SQL Server decides how many pages will be cached in memory. The Buffer Manager manages the buffer cache.

4. Logging and Transaction

SQL Server uses a transaction to make sure that any operation either completes or is undone if fails, but never leaves the database in an intermediate state. Any changes made to a page will update the in-memory cache of the page and simultaneously all the operations performed will be written to a log, along with the transaction ID. Each log entry is recognized by an increasing Log Sequence Number (LSN), ensuring that no event overwrites another event. SQL Server makes sure that the log will be written onto the disc before the actual page is written back.

5. Concurrency and locking

when multiple users update the same data or attempt to read data that is in the process of being changed by another user. In SQL Server we have two modes of concurrency control - pessimistic concurrency and optimistic concurrency. In pessimistic concurrency control, SQL Server controls concurrent access by using locks (shared or exclusive).

In Optimistic concurrency control, a new version of a row is created whenever the div row is updated. Both versions of the row are stored and maintained in a system-defined database Tempdb.

6. Data Retrieval

Data retrieval from SQL Server is done using T-SQL. SQL Server also allows us to write stored procedures to query the data.

7. SQL CLR (Common Language Runtime)

SQL Server 2005 also has a new component named SQL CLR via which it integrates with .NET Framework. When we write code for SQL CLR, data stored in SQL Server databases can be accessed by using the ADO.NET APIs like any other application that accesses SQL Server data.

Read More - Commonly Asked DBMS Interview Questions

SQL Server Editions

There are mainly five editions of SQL Server discussed in the below table

EditionDefinition
DeveloperThis edition lets developers build any kind of application on top of SQL Server. It is intended for database development and testing purposes.
ExpressIt is an entry-level, free database and is ideal for learning and building desktop and small server data-driven applications.
Enterpriseedition delivers comprehensive high-end data center capabilities with blazing-fast performance, unlimited virtualization, and end-to-end business intelligence, enabling high service levels for mission-critical workloads and end-user access to data insights.
StandardThis edition delivers basic data management and business intelligence database for departments and small organizations to run their applications and supports common development tools for on-premises and cloud
WebIt is a good option for web hosting companies due to its low total cost of ownership.

SQL Server Services and Tools

We'll categorize the SQL Server tools and services into three categories:

  1. Data Management
    1. SQL Server Integration Services (SSIS): This service provides extract-transform and load capabilities of different data types between sources.
    2. SQL Server Data Quality Service: It creates a knowledge-based data quality product and employs it to perform data correction, enrichment, standardization, and de-duplication.
    3. SQL Server Master Data Services: It organizes the data into models, creates rules for data updation, and controls who updates those data.
  2. Database Development
    1. SQL Server Data Tool (SSDT): It is a database design and development tool.
    2. SQL Server Management Studio (SSMS): This tool helps us to manage, deploy, and monitor SQL Server databases.
  3. Data Analysis
    1. SQL Server Analysis Services (SSAS): This service provides data analysis, data mining, and Machine Learning functions. It is integrated with the R and Python programming languages for advanced analytics purposes.
    2. SQL Server Reporting Services (SSRS): This service provides reporting features and decision-making capabilities for creating, deploying, and managing reports. Hadoop is integrated with this tool.

SQL Server Instances

An instance of the Database Engine operates as a service that handles all application requests to work with the data in any of the databases managed by that instance. It is the target of the connection requests (logins) from applications.

There are two types of SQL Server Instances:

  1. Primary Instances: The default instance has no name. If a connection request specifies only the name of the computer, the connection is made to the default instance.
  2. Named Instances: Here, we specify an instance name when installing the instance. A connection request must specify both the computer name and instance name to connect to the instance. There is no requirement to install a default instance; all of the instances running on a computer can be named instances.

Advantages of SQL Server Instances

  • Installation of different versions on one machine: You can install multiple versions on a single computer, each of which operates independently of the others.
  • Cost Reduction: It helps in reducing the operating costs of SQL Server. You will get different services from different instances, so there's no need to buy a single license for anything.
  • Maintain production, development, and test environments separately: The key advantage of running multiple versions of SQL Server on a single computer is that you can distinguish your development, output, and test environments separately.
  • Reduce temporary database problems: While running all services on a single SQL Server instance, there is a high risk of having problems. This can be avoided if they run on different instances.
  • Separate security privileges: When different SQL Server instances run different services, it is easy to concentrate on securing the instance that runs the most sensitive service.
  • Maintain a standby server: If the SQL Server instance fails, it can result in a service outage. It explains the importance of having a backup server available to take over if the primary server fails. This feature makes it simple to accomplish with SQL Server instances.
Summary

In the above article, we got into the details of SQL Server. You can consider our SQL Server Course for practical understanding and hands-on experience.

Do you Know?

.NET is gaining popularity day by day, especially after the release of .NET 8. .NET 8 is not only a framework version but much more than that. It redefines the way software applications are built and deployed, enabling developers to meet the evolving demands of modern computing.

Therefore, if you want to upskill yourselves and stand out from others consider our following training programs on .NET.

FAQs

It is used for storing, retrieving, and managing relational data in a structured format.

The full form of SQL Server is a "Structured Query Language Server".

The role of SQL Server revolves around managing and storing relational data efficiently.

SQL is a language used for managing databases, while SQL Server is a specific database management system that implements the SQL language and provides additional features and capabilities for managing data in Microsoft environments.

Take our Sqlserver skill challenge to evaluate yourself!

In less than 5 minutes, with our skill challenge, you can identify your knowledge gaps and strengths in a given skill.

GET FREE CHALLENGE

Share Article
About Author
Shailendra Chauhan (Microsoft MVP, Founder & CEO at Scholarhat by DotNetTricks)

Shailendra Chauhan is the Founder and CEO at ScholarHat by DotNetTricks which is a brand when it comes to e-Learning. He provides training and consultation over an array of technologies like Cloud, .NET, Angular, React, Node, Microservices, Containers and Mobile Apps development. He has been awarded Microsoft MVP 9th time in a row (2016-2024). He has changed many lives with his writings and unique training programs. He has a number of most sought-after books to his name which has helped job aspirants in cracking tough interviews with ease.
Accept cookies & close this