data encryption, 242
strategy for data encryption, 242
stored procedures, 242
data integrity
checking data integrity, 15
DBCC statements, 15
recycled procedures, 15
system stored procedures, 15
domain integrity, 14, 212, 217
entity integrity, 14, 216
reasons for using triggers, 200
referential integrity, 15, 217
data updatability for cursor, 69
data validation
constraints, 124
security for stored procedures, 51
triggers, 126
user interface data validation, 125
using stored procedures, 122
Database Administrator
see DBA.
Database Console Commands statements
see DBCC statements.
database locks, 93
database logic
error handling, 52
@@ERROR variable, 53
example, 53
database objects
description, 225
permissions issues, 225
syscomments table, 225
sysobjects table, 225
database owner
see DBO.
DATABASEPROPERTYEX() function
scope for cursor, 68
DATEADD() function
non-deterministic functions, 185
DATEPART() function
non-deterministic functions, 185
date-time column
optimistic locking row based scheme, 102
DBA
administration and stored procedures, 120
performance tuning, 120
auditing using C2 security tracing, 221
must be trustworthy, 220
DBCC statements
checking data integrity, 15
SQL buffer overflow, 243
DBO
objects owned by DBO, 229
compared to alternative, 229
security problems, 229
user ID's, 225
deadlocks, 95
DEALLOCATE statement
accessing cursors from code, 73
using as soon as possible, 80
debugging
dynamic SQL in stored procedures, 50
SQL Server Debugger, 57
debugging stored procedure, 58
decisions
CASE statements, 23
flow control of stored procedures, 22
GOTO label, 25
IF…ELSE decision processing, 22
deferred name resolution
creating stored procedures, 10
deferred updates
compared to direct updates, 202
required for triggers, 202
deleted table
conceptual tables for triggers, 204
DENY action
object permissions, 226
deployment and stored procedures, 120
deterministic functions, 182
converting non-deterministic function to deterministic, 183
creating index on computed column, 183
creating index on view, 183
description, 182
schema binding, 194
user defined functions, 182
direct recursion triggers, 215
example, 215
RECURSIVE_TRIGGERS option, 215
direct updates
compared to deferred updates, 202
direction for cursor, 68
FORWARD_ONLY, 68
SCROLL, 68
disabling and re-enabling users
0x80000000 status bit, 139
Display Estimated Execution Plan option
graphical view of execution plan, 39
distributed transactions, 87
BEGIN DISTRIBUTED TRANSACTION command, 87
MSDTC, 87
syntax, 87
domain integrity, 14
CHECK constraints, 212
triggers, 212, 217
durability
ACID properties, 82
DYNAMIC
type of cursor, 68
dynamic SQL in stored procedures, 50
debugging issues, 50
optimization issues, 50
security issues, 50