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) |
|
|
5 | (1) |
|
|
5 | (1) |
|
|
5 | (1) |
|
|
6 | (1) |
|
|
6 | (1) |
|
Relational Database Systems |
|
|
6 | (3) |
|
Working with the Book's sample Database |
|
|
6 | (3) |
|
SQL: A Relational Database Language |
|
|
9 | (1) |
|
|
9 | (3) |
|
|
10 | (1) |
|
Entity-Relationship Model |
|
|
11 | (1) |
|
|
12 | (2) |
|
|
14 | (1) |
|
|
14 | (3) |
|
Chapter 2 Planning the Installation and Installing SQL Server |
|
|
17 | (20) |
|
SQL Server Editions and Management Tools |
|
|
17 | (2) |
|
|
17 | (1) |
|
|
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) |
|
|
35 | (2) |
|
Chapter 3 Front-End Tools for the Database Engine |
|
|
37 | (28) |
|
SQL Server Management Studio |
|
|
37 | (5) |
|
|
38 | (2) |
|
|
40 | (1) |
|
|
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) |
|
|
49 | (2) |
|
|
51 | (1) |
|
Data Discovery and Classification |
|
|
51 | (3) |
|
|
54 | (6) |
|
Installation of Azure Data Studio |
|
|
54 | (2) |
|
|
56 | (2) |
|
|
58 | (1) |
|
|
58 | (1) |
|
Database Dashboards and Customization |
|
|
58 | (2) |
|
SQL Server Management Studio vs. Azure Data Studio |
|
|
60 | (1) |
|
|
60 | (1) |
|
|
61 | (4) |
Part II Transact-SQL Language |
|
|
|
65 | (22) |
|
|
65 | (3) |
|
|
66 | (1) |
|
|
66 | (1) |
|
|
67 | (1) |
|
|
67 | (1) |
|
|
67 | (1) |
|
|
68 | (6) |
|
|
68 | (1) |
|
|
69 | (1) |
|
|
69 | (2) |
|
|
71 | (2) |
|
|
73 | (1) |
|
|
74 | (8) |
|
|
74 | (1) |
|
|
75 | (7) |
|
|
82 | (1) |
|
|
83 | (1) |
|
|
83 | (1) |
|
|
84 | (1) |
|
|
84 | (3) |
|
Chapter 5 Data Definition Language |
|
|
87 | (28) |
|
Creating Database Objects |
|
|
87 | (16) |
|
|
88 | (3) |
|
CREATE TABLE: A Basic Form |
|
|
91 | (2) |
|
CREATE TABLE and Declarative Integrity Constraints |
|
|
93 | (5) |
|
|
98 | (3) |
|
Creating Other Database Objects |
|
|
101 | (1) |
|
Integrity Constraints and Domains |
|
|
102 | (1) |
|
Modifying Database Objects |
|
|
103 | (9) |
|
|
104 | (5) |
|
|
109 | (3) |
|
Removing Database Objects |
|
|
112 | (1) |
|
|
112 | (1) |
|
|
113 | (2) |
|
|
115 | (62) |
|
SELECT Statement: Its Clauses and Functions |
|
|
115 | (34) |
|
|
117 | (12) |
|
|
129 | (1) |
|
|
130 | (5) |
|
|
135 | (1) |
|
|
136 | (3) |
|
SELECT Statement and IDENTITY Property |
|
|
139 | (1) |
|
CREATE SEQUENCE Statement |
|
|
140 | (2) |
|
|
142 | (5) |
|
|
147 | (2) |
|
|
149 | (3) |
|
Subqueries and Comparison Operators |
|
|
149 | (1) |
|
Subqueries and the IN Operator |
|
|
150 | (1) |
|
Subqueries and ANY and ALL Operators |
|
|
151 | (1) |
|
|
152 | (1) |
|
|
153 | (11) |
|
Two Syntax Forms to Implement Joins |
|
|
154 | (1) |
|
|
154 | (5) |
|
|
159 | (1) |
|
|
160 | (2) |
|
Further Forms of Join Operations |
|
|
162 | (2) |
|
|
164 | (4) |
|
Subqueries and the EXISTS Function |
|
|
165 | (2) |
|
Should You Use Joins or Subqueries? |
|
|
167 | (1) |
|
|
168 | (7) |
|
|
168 | (1) |
|
|
169 | (6) |
|
|
175 | (1) |
|
|
175 | (2) |
|
Chapter 7 Modification of a Table's Contents |
|
|
177 | (16) |
|
|
177 | (5) |
|
|
178 | (2) |
|
|
180 | (1) |
|
Table Value Constructors and INSERT |
|
|
181 | (1) |
|
|
182 | (2) |
|
|
184 | (1) |
|
Other T-SQL Modification Statements and Clauses |
|
|
185 | (5) |
|
|
186 | (1) |
|
|
186 | (1) |
|
|
187 | (3) |
|
|
190 | (1) |
|
|
191 | (2) |
|
Chapter 8 Stored Procedures and User-Defined Functions |
|
|
193 | (22) |
|
|
193 | (8) |
|
|
194 | (1) |
|
|
194 | (1) |
|
|
195 | (1) |
|
|
196 | (3) |
|
Miscellaneous Procedural Statements |
|
|
199 | (1) |
|
Exception Handling with TRY, CATCH, and THROW |
|
|
199 | (2) |
|
|
201 | (6) |
|
Creation and Execution of Stored Procedures |
|
|
202 | (5) |
|
|
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) |
|
|
214 | (1) |
|
|
214 | (1) |
|
|
215 | (10) |
|
Introduction to the System Catalog |
|
|
215 | (2) |
|
|
217 | (4) |
|
|
217 | (2) |
|
Dynamic Management Views and Functions |
|
|
219 | (1) |
|
|
220 | (1) |
|
|
221 | (2) |
|
|
221 | (1) |
|
|
222 | (1) |
|
|
223 | (1) |
|
|
223 | (1) |
|
|
224 | (1) |
|
|
225 | (20) |
|
|
225 | (3) |
|
|
227 | (1) |
|
|
228 | (1) |
|
|
228 | (10) |
|
|
229 | (3) |
|
Editing Information Concerning Indices |
|
|
232 | (2) |
|
|
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) |
|
|
239 | (1) |
|
|
240 | (2) |
|
|
242 | (1) |
|
|
242 | (1) |
|
|
242 | (3) |
|
|
245 | (14) |
|
|
245 | (5) |
|
|
246 | (3) |
|
Altering and Removing Views |
|
|
249 | (1) |
|
|
250 | (6) |
|
|
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) |
|
|
256 | (1) |
|
|
256 | (3) |
|
Chapter 12 Security System of the Database Engine |
|
|
259 | (38) |
|
|
260 | (9) |
|
|
262 | (1) |
|
|
262 | (1) |
|
|
262 | (1) |
|
Editing Metadata Concerning User Keys |
|
|
263 | (1) |
|
Extensible Key Management |
|
|
264 | (1) |
|
Methods of Data Encryption |
|
|
264 | (5) |
|
|
269 | (3) |
|
Setting Up the Database System Security |
|
|
270 | (2) |
|
|
272 | (4) |
|
|
273 | (1) |
|
DDL Schema-Related Statements |
|
|
273 | (2) |
|
|
275 | (1) |
|
|
276 | (1) |
|
Managing Database Security Using SQL Server Management Studio |
|
|
276 | (1) |
|
Managing Database Security Using Transact-SQL Statements |
|
|
276 | (1) |
|
|
277 | (6) |
|
|
277 | (1) |
|
|
278 | (2) |
|
|
280 | (2) |
|
User-Defined Server Roles |
|
|
282 | (1) |
|
User-Defined Database Roles |
|
|
282 | (1) |
|
|
283 | (8) |
|
|
284 | (3) |
|
|
287 | (1) |
|
|
288 | (1) |
|
Managing Permissions Using SQL Server Management Studio |
|
|
289 | (1) |
|
Managing Authorization and Authentication of Contained Databases |
|
|
289 | (2) |
|
|
291 | (3) |
|
|
294 | (1) |
|
|
295 | (1) |
|
|
295 | (2) |
|
Chapter 13 Concurrency Control |
|
|
297 | (22) |
|
|
298 | (1) |
|
|
298 | (8) |
|
Properties of Transactions |
|
|
299 | (1) |
|
Transact-SQL Statements and Transactions |
|
|
300 | (2) |
|
|
302 | (2) |
|
Editing Information Concerning Transactions and Logs |
|
|
304 | (2) |
|
|
306 | (6) |
|
|
307 | (2) |
|
|
309 | (1) |
|
|
309 | (1) |
|
|
310 | (1) |
|
Displaying Lock Information |
|
|
311 | (1) |
|
|
311 | (1) |
|
|
312 | (3) |
|
|
313 | (1) |
|
The Database Engine and Isolation Levels |
|
|
313 | (2) |
|
|
315 | (2) |
|
Read Committed Snapshot Isolation |
|
|
316 | (1) |
|
|
316 | (1) |
|
|
317 | (1) |
|
|
317 | (2) |
|
|
319 | (14) |
|
|
319 | (2) |
|
|
320 | (1) |
|
Modifying a Trigger's Structure |
|
|
321 | (1) |
|
Using deleted and inserted Virtual Tables |
|
|
321 | (1) |
|
Application Areas for DML Triggers |
|
|
321 | (6) |
|
|
322 | (3) |
|
|
325 | (1) |
|
|
326 | (1) |
|
DDL Triggers and Their Application Areas |
|
|
327 | (2) |
|
|
328 | (1) |
|
|
328 | (1) |
|
|
329 | (1) |
|
|
329 | (4) |
Part III SQL Server: System Administration |
|
|
Chapter 15 System Environment of the Database Engine |
|
|
333 | (24) |
|
|
333 | (4) |
|
|
334 | (1) |
|
|
334 | (1) |
|
|
334 | (3) |
|
|
337 | (1) |
|
|
337 | (7) |
|
|
338 | (2) |
|
|
340 | (1) |
|
Editing Information Concerning Disk Storage |
|
|
341 | (2) |
|
Parallel Processing of Tasks |
|
|
343 | (1) |
|
|
344 | (8) |
|
|
344 | (1) |
|
|
345 | (2) |
|
|
347 | (4) |
|
|
351 | (1) |
|
|
352 | (1) |
|
|
352 | (1) |
|
|
353 | (1) |
|
|
353 | (2) |
|
|
353 | (1) |
|
Using Policy-Based Management |
|
|
354 | (1) |
|
|
355 | (1) |
|
|
356 | (1) |
|
Chapter 16 Backup, Recovery, and System Availability |
|
|
357 | (32) |
|
|
358 | (1) |
|
Introduction to Backup Methods |
|
|
358 | (3) |
|
|
359 | (1) |
|
|
359 | (1) |
|
|
359 | (1) |
|
|
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) |
|
|
367 | (1) |
|
|
368 | (7) |
|
|
375 | (3) |
|
|
378 | (6) |
|
|
378 | (1) |
|
|
379 | (1) |
|
|
380 | (1) |
|
|
381 | (1) |
|
|
381 | (1) |
|
|
381 | (2) |
|
Comparison of High-Availability Components |
|
|
383 | (1) |
|
|
384 | (1) |
|
|
385 | (1) |
|
|
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) |
|
|
394 | (1) |
|
Notifying Operators About the Job Status |
|
|
394 | (1) |
|
Viewing the Job History Log |
|
|
395 | (1) |
|
|
396 | (6) |
|
|
397 | (1) |
|
SQL Server Agent Error Log |
|
|
398 | (1) |
|
|
399 | (1) |
|
Defining Alerts to Handle Errors |
|
|
399 | (3) |
|
|
402 | (1) |
|
|
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) |
|
|
409 | (1) |
|
The distribution Database |
|
|
409 | (1) |
|
|
410 | (4) |
|
|
414 | (2) |
|
|
416 | (3) |
|
Configuring the Distribution and Publication Servers |
|
|
416 | (2) |
|
|
418 | (1) |
|
Configuring Subscription Servers |
|
|
418 | (1) |
|
|
419 | (1) |
|
|
420 | (1) |
|
Chapter 19 Query Optimizer |
|
|
421 | (28) |
|
Phases of Query Processing |
|
|
421 | (2) |
|
How Query Optimization Works |
|
|
423 | (6) |
|
|
423 | (1) |
|
|
423 | (3) |
|
|
426 | (1) |
|
Join Processing Techniques |
|
|
426 | (2) |
|
|
428 | (1) |
|
Tools for Editing the Optimizer Strategy |
|
|
429 | (11) |
|
|
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) |
|
|
440 | (7) |
|
|
441 | (1) |
|
|
441 | (6) |
|
|
447 | (1) |
|
|
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) |
|
|
456 | (8) |
|
Performance Monitor: An Overview |
|
|
456 | (2) |
|
|
458 | (1) |
|
|
459 | (2) |
|
Monitoring the Disk System |
|
|
461 | (2) |
|
Monitoring the Network Interface |
|
|
463 | (1) |
|
Choosing the Right Tool for Monitoring |
|
|
464 | (15) |
|
|
464 | (1) |
|
Database Engine Tuning Advisor |
|
|
465 | (6) |
|
|
471 | (8) |
|
Other Performance Tools of the Database Engine |
|
|
479 | (20) |
|
|
479 | (8) |
|
|
487 | (6) |
|
Performance Data Collector |
|
|
493 | (1) |
|
|
494 | (4) |
|
|
498 | (1) |
|
|
499 | (1) |
|
|
499 | (2) |
|
Chapter 21 In-Memory OLTP |
|
|
501 | (20) |
|
|
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) |
|
|
504 | (3) |
|
|
505 | (1) |
|
|
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) |
|
|
509 | (1) |
|
Compiled Stored Procedures |
|
|
509 | (1) |
|
Editing Information Concerning In-Memory Objects |
|
|
510 | (3) |
|
|
510 | (1) |
|
Catalog Views and System Stored Procedures |
|
|
511 | (1) |
|
|
512 | (1) |
|
|
513 | (4) |
|
Memory Management for In-Memory OLTP: Overview |
|
|
513 | (1) |
|
|
513 | (2) |
|
Migration Tools for In-Memory OLTP |
|
|
515 | (2) |
|
|
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) |
|
|
525 | (2) |
|
Cubes and Their Architectures |
|
|
527 | (4) |
|
|
529 | (1) |
|
Physical Storage of a Cube |
|
|
530 | (1) |
|
|
531 | (1) |
|
|
532 | (1) |
|
|
532 | (1) |
|
Chapter 23 SQL Server Analysis Services |
|
|
533 | (34) |
|
|
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) |
|
|
550 | (13) |
|
|
551 | (1) |
|
Creating a Tabular Model Solution |
|
|
551 | (2) |
|
|
553 | (5) |
|
Delivering Data from the Tabular Project |
|
|
558 | (5) |
|
Multidimensional Model vs. Tabular Model |
|
|
563 | (1) |
|
Analysis Services: Data Security |
|
|
564 | (1) |
|
|
564 | (1) |
|
|
565 | (2) |
|
Chapter 24 Business Intelligence and Transact-SQL |
|
|
567 | (30) |
|
|
568 | (6) |
|
|
570 | (1) |
|
|
571 | (3) |
|
|
574 | (6) |
|
|
574 | (2) |
|
|
576 | (1) |
|
|
577 | (2) |
|
|
579 | (1) |
|
|
580 | (4) |
|
|
581 | (2) |
|
Statistical Aggregate Functions |
|
|
583 | (1) |
|
Standard and Nonstandard Analytic Functions |
|
|
584 | (10) |
|
|
584 | (3) |
|
|
587 | (1) |
|
|
588 | (1) |
|
|
589 | (3) |
|
|
592 | (1) |
|
APPROX_COUNT_DISTINCT Function |
|
|
593 | (1) |
|
|
594 | (1) |
|
|
594 | (3) |
|
Chapter 25 SQL Server Reporting Services |
|
|
597 | (26) |
|
|
597 | (1) |
|
SQL Server Reporting Services Architecture |
|
|
598 | (2) |
|
Reporting Services Windows Service |
|
|
599 | (1) |
|
|
600 | (1) |
|
Installation and Configuration of Reporting Services |
|
|
600 | (3) |
|
|
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) |
|
|
620 | (1) |
|
Reporting Services Security |
|
|
621 | (1) |
|
|
621 | (1) |
|
|
621 | (1) |
|
|
622 | (1) |
|
|
622 | (1) |
|
Chapter 26 Optimizing Techniques for Data Warehousing |
|
|
623 | (18) |
|
|
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) |
|
|
633 | (2) |
|
|
635 | (4) |
|
|
636 | (1) |
|
Modifying the Structure of an Indexed View |
|
|
637 | (1) |
|
Editing Information Concerning Indexed Views |
|
|
638 | (1) |
|
Benefits of Indexed Views |
|
|
639 | (1) |
|
|
639 | (2) |
|
Chapter 27 Columnstore Indices |
|
|
641 | (14) |
|
Benefits of Columnstore Indices |
|
|
642 | (1) |
|
Internal Storage of Columnstore Indices |
|
|
642 | (2) |
|
|
642 | (1) |
|
|
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) |
|
|
653 | (1) |
|
|
654 | (1) |
|
Chapter 28 Intelligent Query Processing |
|
|
655 | (20) |
|
Adaptive Query Processing |
|
|
656 | (8) |
|
|
656 | (2) |
|
|
658 | (3) |
|
|
661 | (3) |
|
|
664 | (3) |
|
Approximate Query Processing |
|
|
667 | (1) |
|
|
667 | (3) |
|
Enabling and Disabling Scalar UDF Inlining |
|
|
670 | (1) |
|
Table Variable Deferred Compilation |
|
|
670 | (1) |
|
|
671 | (4) |
Part V Beyond Relational Data |
|
|
Chapter 29 JSON Integration in the Database Engine |
|
|
675 | (12) |
|
|
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) |
|
|
681 | (2) |
|
|
683 | (2) |
|
|
685 | (2) |
|
Chapter 30 Spatial and Temporal Data |
|
|
687 | (22) |
|
|
688 | (3) |
|
Models for Representing Spatial Data |
|
|
688 | (1) |
|
|
688 | (2) |
|
|
690 | (1) |
|
|
690 | (1) |
|
|
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) |
|
|
696 | (4) |
|
Editing Information Concerning Spatial Data |
|
|
700 | (1) |
|
|
701 | (7) |
|
Creation of Temporal Tables |
|
|
701 | (1) |
|
Temporal Tables and DML Statements |
|
|
702 | (2) |
|
|
704 | (2) |
|
Converting Nontemporal Tables into Temporal Tables |
|
|
706 | (2) |
|
|
708 | (1) |
|
Chapter 31 SQL Server Graph Databases |
|
|
709 | (26) |
|
Graph Databases: A General Introduction |
|
|
709 | (2) |
|
|
710 | (1) |
|
SQL Server Graph Databases: An Introduction |
|
|
711 | (1) |
|
Creating Node Tables and Edge Tables |
|
|
711 | (6) |
|
|
711 | (2) |
|
|
713 | (2) |
|
Inserting Data into Edge Tables |
|
|
715 | (2) |
|
|
717 | (6) |
|
|
718 | (2) |
|
|
720 | (3) |
|
Modifying and Editing Data in Graph Databases |
|
|
723 | (5) |
|
|
723 | (2) |
|
|
725 | (1) |
|
Editing Information Concerning SQL Server Graph Databases |
|
|
725 | (3) |
|
Querying Graph Data Using Relational Queries |
|
|
728 | (2) |
|
|
730 | (1) |
|
|
730 | (5) |
Part VI Machine Learning |
|
|
Chapter 32 SQL Server Machine Learning Services: R Support |
|
|
735 | (20) |
|
|
736 | (6) |
|
R Language: An Introduction |
|
|
736 | (1) |
|
Getting Started with R in SQL Server |
|
|
736 | (3) |
|
|
739 | (3) |
|
|
742 | (7) |
|
|
742 | (5) |
|
Integrate R in Power BI Desktop |
|
|
747 | (2) |
|
Predictive Modeling with R |
|
|
749 | (4) |
|
Solving Linear Regression Problems with R |
|
|
750 | (3) |
|
|
753 | (2) |
|
Chapter 33 SQL Server Machine Learning Services: Python Support |
|
|
755 | (14) |
|
|
755 | (6) |
|
Getting Started with Python |
|
|
756 | (2) |
|
|
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) |
|
|
768 | (1) |
Appendix Exercise Solutions |
|
769 | (32) |
Index |
|
801 | |