Muutke küpsiste eelistusi

Microsoft SQL Server 2019: A Beginner's Guide, Seventh Edition 7th edition [Pehme köide]

  • Formaat: Paperback / softback, 864 pages, kõrgus x laius x paksus: 231x185x48 mm, kaal: 1460 g, 200 Illustrations
  • Ilmumisaeg: 28-Jan-2020
  • Kirjastus: McGraw-Hill Education
  • ISBN-10: 1260458873
  • ISBN-13: 9781260458879
Teised raamatud teemal:
  • Formaat: Paperback / softback, 864 pages, kõrgus x laius x paksus: 231x185x48 mm, kaal: 1460 g, 200 Illustrations
  • Ilmumisaeg: 28-Jan-2020
  • Kirjastus: McGraw-Hill Education
  • ISBN-10: 1260458873
  • ISBN-13: 9781260458879
Teised raamatud teemal:

Publisher's Note: Products purchased from Third Party sellers are not guaranteed by the publisher for quality, authenticity, or access to any online entitlements included with the product.

Get Up to Speed on Microsoft® SQL Server® 2019 Quickly and Easily

Start working with Microsoft SQL Server 2019 in no time with help from this thoroughly revised, practical resource. Filled with real-world examples and hands-on exercises, Microsoft SQL Server 2019: A Beginner’s Guide, Seventh Edition starts by explaining fundamental relational database system concepts. From there, you’ll learn how to write Transact-SQL statements, execute simple and complex database queries, handle system administration and security, and use powerful analysis and reporting tools. New topics such as SQL and JSON support, graph databases, and support for machine learning with R and Python are also covered in this step-by-step tutorial.

    • Install, configure, and customize Microsoft SQL Server 2019
    • Create and modify database objects with Transact-SQL statements
    • Write stored procedures and user-defined functions
    • Handle backup and recovery, and automate administrative tasks
    • Tune your database system for optimal availability and reliability
    • Secure your system using authentication, encryption, and authorization
    • Work with SQL Server Analysis Services, Reporting Services, and other BI tools
    • Gain knowledge of relational storage, presentation, and retrieval of data stored in the JSON format
    • Manage graphs using SQL Server Graph Databases
    • Learn about machine learning support for R and Python

Introduction xx
Part I Basic Concepts and Installation
Chapter 1 Relational Database Systems: An Introduction
3(14)
Database Systems: An Overview
3(3)
Variety of User Interfaces
4(1)
Physical Data Independence
4(1)
Logical Data Independence
5(1)
Query Optimization
5(1)
Data Integrity
5(1)
Concurrency Control
5(1)
Backup and Recovery
6(1)
Database Security
6(1)
Relational Database Systems
6(3)
Working with the Book's sample Database
6(3)
SQL: A Relational Database Language
9(1)
Database Design
9(3)
Normal Forms
10(1)
Entity-Relationship Model
11(1)
Syntax Conventions
12(2)
Summary
14(1)
Exercises
14(3)
Chapter 2 Planning the Installation and Installing SQL Server
17(20)
SQL Server Editions and Management Tools
17(2)
SQL Server Editions
17(1)
Management Tools
18(1)
Planning Phase: General Recommendations
19(3)
Which Operating System Will Be Used?
19(1)
Which SQL Server Components Should Be Installed?
19(2)
Where Will the Root Directory Be Stored?
21(1)
Should Multiple Instances of the Database Engine Be Used?
21(1)
Which Authentication Mode for the Database Engine Should Be Used?
22(1)
Installation of SQL Server on Windows or Ubuntu
22(13)
Planning the Installation on Windows
22(2)
Installing SQL Server on Windows
24(6)
Installing SQL Server Directly on Ubuntu
30(5)
Summary
35(2)
Chapter 3 Front-End Tools for the Database Engine
37(28)
SQL Server Management Studio
37(5)
Connecting to a Server
38(2)
Registered Servers
40(1)
Object Explorer
40(1)
Organizing and Navigating SQL Server Management Studio's Panes
41(1)
Using SQL Server Management Studio with the Database Engine
42(7)
Administering Database Servers
42(2)
Managing Databases Using Object Explorer
44(5)
Authoring Activities Using SQL Server Management Studio
49(5)
Query Editor
49(2)
Solution Explorer
51(1)
Data Discovery and Classification
51(3)
Azure Data Studio
54(6)
Installation of Azure Data Studio
54(2)
Configuration
56(2)
Object Explorer
58(1)
Code Editor
58(1)
Database Dashboards and Customization
58(2)
SQL Server Management Studio vs. Azure Data Studio
60(1)
Summary
60(1)
Exercises
61(4)
Part II Transact-SQL Language
Chapter 4 SQL Components
65(22)
SQL's Basic Objects
65(3)
Literal Values
66(1)
Identifiers
66(1)
Delimiters
67(1)
Comments
67(1)
Reserved Keywords
67(1)
Data Types
68(6)
Numeric Data Types
68(1)
Character Data Types
69(1)
Temporal Data Types
69(2)
Miscellaneous Data Types
71(2)
Storage Options
73(1)
Transact-SQL Functions
74(8)
Aggregate Functions
74(1)
Scalar Functions
75(7)
Scalar Operators
82(1)
Global Variables
83(1)
NULL Values
83(1)
Summary
84(1)
Exercises
84(3)
Chapter 5 Data Definition Language
87(28)
Creating Database Objects
87(16)
Creation of a Database
88(3)
CREATE TABLE: A Basic Form
91(2)
CREATE TABLE and Declarative Integrity Constraints
93(5)
Referential Integrity
98(3)
Creating Other Database Objects
101(1)
Integrity Constraints and Domains
102(1)
Modifying Database Objects
103(9)
Altering a Database
104(5)
Altering a Table
109(3)
Removing Database Objects
112(1)
Summary
112(1)
Exercises
113(2)
Chapter 6 Queries
115(62)
SELECT Statement: Its Clauses and Functions
115(34)
WHERE Clause
117(12)
GROUP BY Clause
129(1)
Aggregate Functions
130(5)
HAVING Clause
135(1)
ORDER BY Clause
136(3)
SELECT Statement and IDENTITY Property
139(1)
CREATE SEQUENCE Statement
140(2)
Set Operators
142(5)
CASE Expressions
147(2)
Subqueries
149(3)
Subqueries and Comparison Operators
149(1)
Subqueries and the IN Operator
150(1)
Subqueries and ANY and ALL Operators
151(1)
Temporary Tables
152(1)
Join Operator
153(11)
Two Syntax Forms to Implement Joins
154(1)
Natural Join
154(5)
Cartesian Product
159(1)
Outer Join
160(2)
Further Forms of Join Operations
162(2)
Correlated Subqueries
164(4)
Subqueries and the EXISTS Function
165(2)
Should You Use Joins or Subqueries?
167(1)
Table Expressions
168(7)
Derived Tables
168(1)
Common Table Expressions
169(6)
Summary
175(1)
Exercises
175(2)
Chapter 7 Modification of a Table's Contents
177(16)
INSERT Statement
177(5)
Inserting a Single Row
178(2)
Inserting Multiple Rows
180(1)
Table Value Constructors and INSERT
181(1)
UPDATE Statement
182(2)
DELETE Statement
184(1)
Other T-SQL Modification Statements and Clauses
185(5)
TRUNCATE TABLE Statement
186(1)
MERGE Statement
186(1)
The OUTPUT Clause
187(3)
Summary
190(1)
Exercises
191(2)
Chapter 8 Stored Procedures and User-Defined Functions
193(22)
Procedural Extensions
193(8)
Block of Statements
194(1)
IF Statement
194(1)
WHILE Statement
195(1)
Local Variables
196(3)
Miscellaneous Procedural Statements
199(1)
Exception Handling with TRY, CATCH, and THROW
199(2)
Stored Procedures
201(6)
Creation and Execution of Stored Procedures
202(5)
User-Defined Functions
207(7)
Types of User-Defined Functions
207(1)
Creation and Execution of User-Defined Functions
207(7)
Changing the Structure of UDFs
214(1)
Summary
214(1)
Exercises
214(1)
Chapter 9 System Catalog
215(10)
Introduction to the System Catalog
215(2)
General Interfaces
217(4)
Catalog Views
217(2)
Dynamic Management Views and Functions
219(1)
Information Schema
220(1)
Proprietary Interfaces
221(2)
System Stored Procedures
221(1)
System Functions
222(1)
Property Functions
223(1)
Summary
223(1)
Exercises
224(1)
Chapter 10 Indices
225(20)
Introduction to Indices
225(3)
Clustered Indices
227(1)
Nonclustered Indices
228(1)
Transact-SQL and Indices
228(10)
Creating Indices
229(3)
Editing Information Concerning Indices
232(2)
Altering Indices
234(1)
Creation of Resumable Online Indices
235(2)
Removing and Renaming Indices
237(1)
Guidelines for Creating and Using Indices
238(4)
Indices and Conditions in the WHERE Clause
238(1)
Indices and the Join Operator
239(1)
Covering Index
239(1)
Missing Indices
240(2)
Special Types of Indices
242(1)
Summary
242(1)
Exercises
242(3)
Chapter 11 Views
245(14)
DDL Statements and Views
245(5)
Creating a View
246(3)
Altering and Removing Views
249(1)
DML Statements and Views
250(6)
View Retrieval
250(1)
INSERT Statement and a View
251(2)
UPDATE Statement and a View
253(2)
DELETE Statement and a View
255(1)
Editing Information Concerning Views
256(1)
Summary
256(1)
Exercises
256(3)
Chapter 12 Security System of the Database Engine
259(38)
Encrypting Data
260(9)
Symmetric Keys
262(1)
Asymmetric Keys
262(1)
Certificates
262(1)
Editing Metadata Concerning User Keys
263(1)
Extensible Key Management
264(1)
Methods of Data Encryption
264(5)
Authentication
269(3)
Setting Up the Database System Security
270(2)
Schemas
272(4)
User-Schema Separation
273(1)
DDL Schema-Related Statements
273(2)
Default Database Schemas
275(1)
Database Security
276(1)
Managing Database Security Using SQL Server Management Studio
276(1)
Managing Database Security Using Transact-SQL Statements
276(1)
Roles
277(6)
Fixed Server Roles
277(1)
Fixed Database Roles
278(2)
Application Roles
280(2)
User-Defined Server Roles
282(1)
User-Defined Database Roles
282(1)
Authorization
283(8)
GRANT Statement
284(3)
DENY Statement
287(1)
REVOKE Statement
288(1)
Managing Permissions Using SQL Server Management Studio
289(1)
Managing Authorization and Authentication of Contained Databases
289(2)
Change Tracking
291(3)
Data Security and Views
294(1)
Summary
295(1)
Exercises
295(2)
Chapter 13 Concurrency Control
297(22)
Concurrency Models
298(1)
Transactions
298(8)
Properties of Transactions
299(1)
Transact-SQL Statements and Transactions
300(2)
Transaction Log
302(2)
Editing Information Concerning Transactions and Logs
304(2)
Locking
306(6)
Lock Modes
307(2)
Lock Granularity
309(1)
Lock Escalation
309(1)
Affecting Locks
310(1)
Displaying Lock Information
311(1)
Deadlock
311(1)
Isolation Levels
312(3)
Concurrency Problems
313(1)
The Database Engine and Isolation Levels
313(2)
Row Versioning
315(2)
Read Committed Snapshot Isolation
316(1)
Snapshot Isolation
316(1)
Summary
317(1)
Exercises
317(2)
Chapter 14 Triggers
319(14)
Introduction to Triggers
319(2)
Creating a DML Trigger
320(1)
Modifying a Trigger's Structure
321(1)
Using deleted and inserted Virtual Tables
321(1)
Application Areas for DML Triggers
321(6)
AFTER Triggers
322(3)
INSTEAD OF Triggers
325(1)
First and Last Triggers
326(1)
DDL Triggers and Their Application Areas
327(2)
Database-Level Triggers
328(1)
Server-Level Triggers
328(1)
Summary
329(1)
Exercises
329(4)
Part III SQL Server: System Administration
Chapter 15 System Environment of the Database Engine
333(24)
System Databases
333(4)
master Database
334(1)
model Database
334(1)
tempdb Database
334(3)
msdb Database
337(1)
Disk Storage
337(7)
Properties of Data Pages
338(2)
Types of Data Pages
340(1)
Editing Information Concerning Disk Storage
341(2)
Parallel Processing of Tasks
343(1)
Utilities
344(8)
bcp Utility
344(1)
sqlcmd Utility
345(2)
mssql-cli Utility
347(4)
sqlservr Utility
351(1)
DBCC Commands
352(1)
Validation Commands
352(1)
Performance Command
353(1)
Policy-Based Management
353(2)
Key Terms and Concepts
353(1)
Using Policy-Based Management
354(1)
Summary
355(1)
Exercises
356(1)
Chapter 16 Backup, Recovery, and System Availability
357(32)
Reasons for Data Loss
358(1)
Introduction to Backup Methods
358(3)
Full Database Backup
359(1)
Differential Backup
359(1)
Transaction Log Backup
359(1)
File or Filegroup Backup
360(1)
Performing Database Backup
361(6)
Backing Up Using Transact-SQL Statements
361(3)
Backing Up Using SQL Server Management Studio
364(1)
Determining Which Databases to Back Up
365(2)
Performing Database Recovery
367(11)
Automatic Recovery
367(1)
Manual Recovery
368(7)
Recovery Models
375(3)
System Availability
378(6)
Using a Standby Server
378(1)
Using RAID Technology
379(1)
Database Mirroring
380(1)
Failover Clustering
381(1)
Log Shipping
381(1)
AlwaysOn
381(2)
Comparison of High-Availability Components
383(1)
Maintenance Plan Wizard
384(1)
Summary
385(1)
Exercises
386(3)
Chapter 17 Automating System Administration Tasks
389(16)
Starting SQL Server Agent
390(1)
Creating Jobs and Operators
391(5)
Creating a Job and Its Steps
391(3)
Creating a Job Schedule
394(1)
Notifying Operators About the Job Status
394(1)
Viewing the Job History Log
395(1)
Alerts
396(6)
Error Messages
397(1)
SQL Server Agent Error Log
398(1)
Windows Application Log
399(1)
Defining Alerts to Handle Errors
399(3)
Summary
402(1)
Exercises
403(2)
Chapter 18 Data Replication
405(16)
Distributed Data and Methods for Distributing
406(1)
SQL Server Replication: An Overview
407(9)
Publishers, Distributors, and Subscribers
407(1)
Publications and Articles
408(1)
Agents
409(1)
The distribution Database
409(1)
Replication Types
410(4)
Replication Models
414(2)
Managing Replication
416(3)
Configuring the Distribution and Publication Servers
416(2)
Setting Up Publications
418(1)
Configuring Subscription Servers
418(1)
Summary
419(1)
Exercises
420(1)
Chapter 19 Query Optimizer
421(28)
Phases of Query Processing
421(2)
How Query Optimization Works
423(6)
Query Analysis
423(1)
Index Selection
423(3)
Join Order Selection
426(1)
Join Processing Techniques
426(2)
Plan Caching
428(1)
Tools for Editing the Optimizer Strategy
429(11)
SET Statement
429(3)
SQL Server Management Studio and Graphical Execution Plans
432(1)
Examples of Execution Plans
433(4)
Dynamic Management Views and Query Optimizer
437(3)
Optimizer Hints
440(7)
Why Use Optimizer Hints
441(1)
Types of Optimizer Hints
441(6)
Summary
447(1)
Exercises
448(1)
Chapter 20 Performance Tuning
449(52)
Factors That Affect Performance
450(6)
Database Applications and Performance
450(2)
The Database Engine and Performance
452(1)
System Resources and Performance
452(4)
Monitoring Performance
456(8)
Performance Monitor: An Overview
456(2)
Monitoring the CPU
458(1)
Monitoring Memory
459(2)
Monitoring the Disk System
461(2)
Monitoring the Network Interface
463(1)
Choosing the Right Tool for Monitoring
464(15)
SQL Server Profiler
464(1)
Database Engine Tuning Advisor
465(6)
Extended Events
471(8)
Other Performance Tools of the Database Engine
479(20)
Query Store
479(8)
Automatic Tuning
487(6)
Performance Data Collector
493(1)
Resource Governor
494(4)
Live Query Statistics
498(1)
Summary
499(1)
Exercises
499(2)
Chapter 21 In-Memory OLTP
501(20)
Memory-Optimized Tables
502(2)
Pinned Tables as Predecessor of Memory-Optimized Tables
502(1)
Creating a Memory-Optimized Filegroup
502(1)
Creating Memory-Optimized Tables
503(1)
Row and Index Storage
504(3)
Row Storage
505(1)
Index Storage
505(2)
In-Memory OLTP and Concurrency Control
507(2)
Logging Memory-Optimized Objects
508(1)
Optimistic Multiversion Concurrency Control
508(1)
Accessing the Content of Memory-Optimized Tables
509(1)
Interpreted Transact-SQL
509(1)
Compiled Stored Procedures
509(1)
Editing Information Concerning In-Memory Objects
510(3)
Property Functions
510(1)
Catalog Views and System Stored Procedures
511(1)
Dynamic Management Views
512(1)
Tools for In-Memory OLTP
513(4)
Memory Management for In-Memory OLTP: Overview
513(1)
Memory Management Tools
513(2)
Migration Tools for In-Memory OLTP
515(2)
Summary
517(4)
Part IV SQL Server and Business Intelligence
Chapter 22 Business Intelligence: An Introduction
521(12)
Online Transaction Processing vs. Business Intelligence
521(2)
Online Transaction Processing
522(1)
Business Intelligence Systems
522(1)
Data Warehouses and Data Marts
523(2)
Data Warehouse Design
525(2)
Cubes and Their Architectures
527(4)
Aggregation
529(1)
Physical Storage of a Cube
530(1)
Data Access
531(1)
Summary
532(1)
Exercises
532(1)
Chapter 23 SQL Server Analysis Services
533(34)
Multidimensional Model
534(16)
Multidimensional Model Terminology
535(1)
Creating a New Project Using Visual Studio 2019
536(2)
Creating and Processing of a Multidimensional Cube
538(8)
Delivering Data from the Multidimensional Model
546(4)
Tabular Model
550(13)
Workspace Database
551(1)
Creating a Tabular Model Solution
551(2)
A Tabular Model Example
553(5)
Delivering Data from the Tabular Project
558(5)
Multidimensional Model vs. Tabular Model
563(1)
Analysis Services: Data Security
564(1)
Summary
564(1)
Exercises
565(2)
Chapter 24 Business Intelligence and Transact-SQL
567(30)
Window Construct
568(6)
Partitioning
570(1)
Ordering and Framing
571(3)
Extensions of GROUP BY
574(6)
CUBE Operator
574(2)
ROLLUP Operator
576(1)
Grouping Functions
577(2)
Grouping Sets
579(1)
OLAP Query Functions
580(4)
Ranking Functions
581(2)
Statistical Aggregate Functions
583(1)
Standard and Nonstandard Analytic Functions
584(10)
TOP Clause
584(3)
OFFSET/FETCH
587(1)
NTILE Function
588(1)
Pivoting Data
589(3)
STRING_AGG Function
592(1)
APPROX_COUNT_DISTINCT Function
593(1)
Summary
594(1)
Exercises
594(3)
Chapter 25 SQL Server Reporting Services
597(26)
Reports: An Introduction
597(1)
SQL Server Reporting Services Architecture
598(2)
Reporting Services Windows Service
599(1)
Report Catalog
600(1)
Installation and Configuration of Reporting Services
600(3)
Creating Reports
603(14)
Installation of SQL Server Data Tools
604(1)
Creating Your First Report
605(6)
Creating a Parameterized Report
611(2)
Creating a Report Using a Chart
613(4)
Managing and Tuning Reports
617(4)
Reporting Services Web Portal
618(2)
Performance Issues
620(1)
Reporting Services Security
621(1)
Authentication
621(1)
Authorization
621(1)
Summary
622(1)
Exercises
622(1)
Chapter 26 Optimizing Techniques for Data Warehousing
623(18)
Data Partitioning
623(10)
How the Database Engine Partitions Data
624(1)
Steps for Creating Partitioned Tables
624(5)
Partitioning Techniques for Increasing System Performance
629(2)
Editing Information Concerning Partitioning
631(2)
Guidelines for Partitioning Tables and Indices
633(1)
Star Join Optimization
633(2)
Indexed Views
635(4)
Creating an Indexed View
636(1)
Modifying the Structure of an Indexed View
637(1)
Editing Information Concerning Indexed Views
638(1)
Benefits of Indexed Views
639(1)
Summary
639(2)
Chapter 27 Columnstore Indices
641(14)
Benefits of Columnstore Indices
642(1)
Internal Storage of Columnstore Indices
642(2)
Index Storage
642(1)
Compression
643(1)
Types of Columnstore Indices
644(3)
Clustered Columnstore Index
644(2)
Nonclustered Columnstore Index
646(1)
Editing Information Concerning Columnstore Indices
647(2)
Columnstore Indices: Performance
649(4)
Columnstore Indices vs. Rowstore Indices
649(2)
Batch Mode on Columnstore
651(2)
Summary
653(1)
Exercises
654(1)
Chapter 28 Intelligent Query Processing
655(20)
Adaptive Query Processing
656(8)
Memory Grant Feedback
656(2)
Adaptive Join
658(3)
Interleaved Execution
661(3)
Batch Mode on Rowstore
664(3)
Approximate Query Processing
667(1)
Scalar UDF Inlining
667(3)
Enabling and Disabling Scalar UDF Inlining
670(1)
Table Variable Deferred Compilation
670(1)
Summary
671(4)
Part V Beyond Relational Data
Chapter 29 JSON Integration in the Database Engine
675(12)
An Introduction to JSON
675(2)
Why Support JSON in SQL Server?
676(1)
Storing JSON Documents in the Database Engine
677(1)
Presenting and Querying JSON Documents
678(5)
Presenting JSON Documents as Relational Data
678(1)
Presenting Relational Data as JSON Documents
679(2)
Querying JSON Documents
681(2)
Updating JSON Documents
683(2)
Summary
685(2)
Chapter 30 Spatial and Temporal Data
687(22)
Spatial Data
688(3)
Models for Representing Spatial Data
688(1)
GEOMETRY Data Type
688(2)
GEOGRAPHY Data Type
690(1)
GEOMETRY vs. GEOGRAPHY
690(1)
External Data Formats
691(1)
Working with Spatial Data Types
691(10)
Working with the GEOMETRY Data Type
692(3)
Working with the GEOGRAPHY Data Type
695(1)
Spatial Indices
696(4)
Editing Information Concerning Spatial Data
700(1)
Temporal Tables
701(7)
Creation of Temporal Tables
701(1)
Temporal Tables and DML Statements
702(2)
Querying Temporal Data
704(2)
Converting Nontemporal Tables into Temporal Tables
706(2)
Summary
708(1)
Chapter 31 SQL Server Graph Databases
709(26)
Graph Databases: A General Introduction
709(2)
Graph Databases: Models
710(1)
SQL Server Graph Databases: An Introduction
711(1)
Creating Node Tables and Edge Tables
711(6)
Creating Node Tables
711(2)
Creating Edge Tables
713(2)
Inserting Data into Edge Tables
715(2)
Querying Graph Data
717(6)
The MATCH Function
718(2)
Recursive Relationships
720(3)
Modifying and Editing Data in Graph Databases
723(5)
Deleting Graph Data
723(2)
Updating Graph Data
725(1)
Editing Information Concerning SQL Server Graph Databases
725(3)
Querying Graph Data Using Relational Queries
728(2)
Summary
730(1)
Exercises
730(5)
Part VI Machine Learning
Chapter 32 SQL Server Machine Learning Services: R Support
735(20)
SQL Server R Services
736(6)
R Language: An Introduction
736(1)
Getting Started with R in SQL Server
736(3)
R Data Frames
739(3)
Data Visualization
742(7)
Data Visualization in R
742(5)
Integrate R in Power BI Desktop
747(2)
Predictive Modeling with R
749(4)
Solving Linear Regression Problems with R
750(3)
Summary
753(2)
Chapter 33 SQL Server Machine Learning Services: Python Support
755(14)
Python: An Introduction
755(6)
Getting Started with Python
756(2)
Python Data Frames
758(3)
Data Visualization with Python
761(4)
Predictive Modeling with Python in SQL Server
765(3)
Solving Linear Regression Problems Using Python
765(3)
Summary
768(1)
Appendix Exercise Solutions 769(32)
Index 801
Dusan Petkovic (Germany) is a professor in the Department of Computer Science at the Polytechnic in Rosenheim, Germany. He frequently contributes to SQL Server Magazine and has published 8 other computer books in Germany for Addison Wesley and McGraw-Hill.