data integrity, enforcement of, 47-48
Data Transformation Services
looping through DTS packages, 604-606
running, 604
data types, 55-56
approximate numbers, 61-62
binary, 63
character strings, 57-58
CLR data types mapping, 338
conversion, 603
date and time, 59-60
exact numbers, 62
integer numbers, 60-61
list of, 652-654
monetary, 62-63
special, 64-67
system-defined, 55-67
T-SQL user-defined, 67-68
Unicode character strings, 58-59
user-defined, 55
database access, 544
Database Mail, 5, 619-622
database objects
developing and deploying in Visual Studio, 320
developing and deploying without Visual Studio, 324-329
databases, 54, 55
data-dependent routing, 250
date and time data types, 59-60
DateAdd() function, 123
DateDiff() function, 123
DateLength() function, 110
DDL batches, 150
DDL triggers, 279-280
creation of, 379-383
EventData() function, 281-283
scope and events, 280-281
syntax, 283
deadlocks, 194-198
Deallocate statements, 97
debugging, 472
CLR database objects, 480-484
finding the source of the errors, 473-474
nested stored procedures, 488
resolution, 474
with SQL Profiler, 490-494
stabilizing errors, 473
T-SQL Debugger, 476-480
typical errors, 494-499
without Visual Studio, 484-490
See also error handling; errors
Declare Cursor statements, 95
default values, 36-38
DefaultValue() method, 394
deferred name resolution, 148, 498-499
deleting stored procedures, 45
delimited identifiers, 53
Deny statements, 557-558
dependent and depending objects, listing, 45-47
deploying a database
attaching and detaching in Management Studio, 522-523, 524
by backup and restore, 523
detaching and reattaching in T-SQL, 521-522
potential problems, 523-524
deploying individual objects
deploying Create scripts in Visual Studio .NET, 535-537
deploying scripts, 527-535
deployment scripts, 525
incremental builds, 537-538
scripting data, 525-526
scripting data in Visual Studio .NET, 526-527
distributed partitioned views, 244-248
execution plans, 248-253
scalability and performance of, 255
updateable, 253-255
Distributed Transaction Coordinator, 5
distributed transactions, 173-175, 420-422
DML triggers, 262
After triggers, 262-264, 267-270, 272-274
creation of, 373-378
handling changes on multiple records, 270-272
inserted and deleted virtual tables, 264-266
Instead-of triggers, 262, 274-275
managing, 283-284
nested and recursive, 272
order of execution, 278
triggering a trigger, 266-267
double precision, 61
DTS. See Data Transformation Services
dynamic views, 234
dynamically constructed queries
data script generator, 432-437
executing a string, 428-429
query by form, 430-432
security, 439-442
sp_executesql stored procedure, 437-439