Microsoft SQL Server 2008 r2. Curso Practico

download Microsoft SQL Server 2008 r2. Curso Practico

of 9

Transcript of Microsoft SQL Server 2008 r2. Curso Practico

  • 7/22/2019 Microsoft SQL Server 2008 r2. Curso Practico

    1/9

    NDICE

    CAPTULO 1. CARACTERSTICAS, NOVEDADES Y ENTORNO DE

    TRABAJO............................................................................................................................171.1NOVEDADESENSQLSERVER2008R2 ...............................................................17

    1.2INSTALACINDEMICROSOFTSQLSERVER2008R2.....................................18

    1.3VERSIONESDEMICROSOFTSQLSERVER2008 ...............................................25

    1.3.1 Ediciones Core Server de SQL Server 2008 R2 .................................................25

    1.3.2 Ediciones especializadas de SQL Server 2008 R2..............................................25

    1.4PRIMEROSPASOSENSQLSERVER2008R2:INICIODELSERVIDOR ..........26

    1.4.1 Ejecutar SQL Server en una red..........................................................................29

    1.4.2 Detener SQL Server ............................................................................................31

    CAPTULO 2. CONCEPTOS, OBJETOS, OPERACIONES, DISEO Y

    CREACIN DE BASES DE DATOS ...............................................................................332.1BASESDEDATOS:TABLAS,CAMPOSYREGISTROS......................................33

    2.2ESTRUCTURADELASBASESDEDATOS ..........................................................34

    2.2.1 Modelos de datos primitivos: sistemas de gestin de archivos...........................34

    2.2.2 Bases de datos jerrquicas...................................................................................35

    2.2.3 Bases de datos en red ..........................................................................................37

    2.2.4 Bases de datos relacionales .................................................................................39

    2.3CARACTERSTICASDELASBASESDEDATOSRELACIONALES.................41

    2.4OPERACIONESRELACIONALES BSICAS ........................................................42

    2.5OTRASOPERACIONESRELACIONALESYOPERADORESBOOLEANOS....45

    2.6DISEODEUNABASEDEDATOSRELACIONAL ............................................462.6.1 Claves primarias y secundarias (externas o forneas).........................................46

  • 7/22/2019 Microsoft SQL Server 2008 r2. Curso Practico

    2/9

    8 MICROSOFT SQL SERVER 2008 R2. CURSO PRCTICO RA-MA

    2.6.2 Integridad ............................................................................................................47

    2.6.3 Disparadores........................................................................................................50

    2.6.4 ndices .................................................................................................................51

    2.6.5 Tablas en una base de datos relacional ...............................................................55

    2.6.6 Un ejemplo de diseo de base de datos relacional..............................................572.7CREARUNABASEDEDATOSCONSQLSERVER.............................................66

    2.7.1 Estimar el tamao de una tabla ........................................................................... 69

    2.7.2 Estimar el tamao de la base de datos.................................................................71

    2.7.3 Creacin de una base de datos SQL Server mediante el Administradorcorporativo ..........................................................................................................71

    CAPTULO 3. CREACIN Y ADMINISTRACIN DE TABLAS,RELACIONES E NDICES..............................................................................................77

    3.1CREACINDETABLAS..........................................................................................77

    3.1.1 Crear una tabla nueva con el diseador de tablas ...............................................81

    3.1.2 Modificar una tabla nueva con el diseador de tablas ........................................903.2CREACINDENDICESYCLAVES .....................................................................92

    3.2.1 Creacin de ndices nicos..................................................................................92

    3.2.2 Creacin de clave principal o primaria ...............................................................94

    3.2.3 Creacin de ndices agrupados............................................................................96

    3.3RELACIONES............................................................................................................99

    3.3.1 Crear relacin de clave fornea con el diseador de tablas ..............................100

    3.4RESTRICCIONESCHECK .....................................................................................102

    3.4.1 Crear restriccin CHECK mediante el diseador de tablas ..............................103

    3.4.2 Expresiones de restriccin CHECK..................................................................105

    3.5DIAGRAMASDEBASESDEDATOS...................................................................106

    3.5.1 Creacin de un diagrama de base de datos........................................................107

    3.5.2 Crear claves primarias, ndices y restricciones en diagramas de base de datos.Insertar y eliminar columnas y tablas................................................................107

    3.5.3 Crear relaciones en el diagrama de bases de datos ...........................................109

    3.5.4 Detalles de visualizacin en el diagrama de base de datos...............................111

    3.5.5 Crear una tabla nueva y aadir una tabla existente al diagrama .......................114

    3.6INTRODUCCINDEDATOSENLASTABLAS.................................................115

    CAPTULO 4. HERRAMIENTAS DE CONSULTA. CONSULTAS DELMOTOR DE BASE DE DATOS Y EDITOR SQL........................................................119

    4.1INTRODUCCIN....................................................................................................119

    4.2INICIACINALASCONSULTASYHERRAMIENTAS....................................1204.3CONSULTASDELMOTORDEBASEDEDATOS.EDITORSQL.....................121

  • 7/22/2019 Microsoft SQL Server 2008 r2. Curso Practico

    3/9

    RA-MA NDICE 9

    4.4REALIZARCONSULTASENLAVENTANADECONSULTAOEDITORSQL............................................................................................................125

    4.5MODIFICACINDELAINFORMACINENLAVENTANAABRIRTABLA .....................................................................................................................130

    4.6ARCHIVOSSQLYPLANTILLAS.........................................................................1334.7EXPLORADORDEOBJETOS ...............................................................................136

    4.8SELECCINDEINFORMACINDELABASEDEDATOS.INTRODUCCINALCOMANDOSELECTDETRANSACT-SQL....................137

    4.8.1 Clusula FROM.................................................................................................139

    4.8.2 Clusula WHERE..............................................................................................139

    4.8.3 Clusula GROUP BY........................................................................................141

    4.8.4 Clusula ORDER BY........................................................................................141

    4.8.5 Clusula HAVING............................................................................................142

    CAPTULO 5. VER Y MODIFICAR DATOS CON EL DISEADOR DECONSULTAS ....................................................................................................................145

    5.1DISEADORDECONSULTASDESDEELEDITORSQL..................................145

    5.2DISEADORDECONSULTASDESDETABLASOVISTAS ............................150

    5.3PANELESDELDISEADORDECONSULTAS..................................................152

    5.3.1 Panel Diagrama .................................................................................................152

    5.3.2 Panel Cuadrcula o Criterios .............................................................................155

    5.3.3 Panel SQL .........................................................................................................157

    5.3.4 Panel Resultados ...............................................................................................158

    5.4OPERATIVACONCONSULTAS ..........................................................................158

    5.5TIPOSDECONSULTAS.........................................................................................161

    5.6CONSULTASPARAMTRICAS...........................................................................165

    5.7TABLASDERIVADAS...........................................................................................1685.8CRITERIOSDEBSQUEDA.................................................................................171

    CAPTULO 6. ELEMENTOS DE TRANSACT-SQL:FORMATOS, TIPOS DE DATOS, OPERADORES Y FUNCIONES........................177

    6.1ELLENGUAJESQL................................................................................................177

    6.2UTILIZANDOTRANSACT-SQL...........................................................................181

    6.3ELEMENTOSBSICOSDETRANSACT-SQL ...................................................182

    6.4IDENTIFICADORES...............................................................................................182

    6.5TIPOSDEDATOS ...................................................................................................184

    6.6FORMATOSENTRANSACT-SQL........................................................................187

    6.7CONSTANTES ........................................................................................................1936.8FUNCIONES............................................................................................................195

  • 7/22/2019 Microsoft SQL Server 2008 r2. Curso Practico

    4/9

    10 MICROSOFT SQL SERVER 2008 R2. CURSO PRCTICO RA-MA

    6.9CONVERSINDETIPOSDEDATOS .................................................................. 213

    6.9.1 Funciones CAST y CONVERT ........................................................................214

    6.9.2 Conversiones explcitas e implcitas ................................................................. 215

    6.10EXPRESIONES......................................................................................................216

    6.11OPERADORES ......................................................................................................2186.11.1 Clasificacin de los operadores.......................................................................218

    6.11.2 Ejemplos de operadores ..................................................................................220

    6.11.3 Orden de precedencia de los operadores.........................................................222

    6.12PALABRASRESERVADAS.................................................................................222

    6.13REGLASDESINTAXISENTRANSACT-SQL...................................................225

    6.14COMENTARIOSENTRANSACT-SQL...............................................................226

    CAPTULO 7. TRANSACT-SQL. LENGUAJE DE CONSULTA DE DATOS:SENTENCIA SELECT.....................................................................................................229

    7.1INTRODUCCIN....................................................................................................229

    7.2LASENTENCIASELECT.......................................................................................2307.2.1 Clusula SELECT.............................................................................................231

    7.2.2 Clusula INTO ..................................................................................................233

    7.2.3 Clusula FROM.................................................................................................234

    7.2.4 Clusula WHERE..............................................................................................236

    7.2.5 Clusula GROUP BY........................................................................................236

    7.2.6 Clusula HAVING............................................................................................238

    7.2.7 Operador UNION..............................................................................................238

    7.2.8 Clusula ORDER BY........................................................................................239

    7.2.9 Clusula COMPUTE.........................................................................................239

    7.2.10 Clusula FOR..................................................................................................2417.2.11 Clusula OPTION...........................................................................................242

    7.2.12 Observaciones relativas a la sentencia SELECT ............................................244

    7.3SELECCINDEFILAS ..........................................................................................246

    7.3.1 Filas duplicadas y la clusula DISTINCT.........................................................248

    7.4ORDENACINDELOSRESULTADOSDEUNACONSULTA.........................249

    7.5COLUMNASCALCULADAS ................................................................................251

    7.6RENOMBRARCOLUMNAS:CLUSULAAS.....................................................253

    7.7CONSULTASCONCONDICIONESDEBSQUEDA.........................................254

    7.7.1 Contrastes de comparacin ...............................................................................255

    7.7.2 Contraste de rango: clusula BETWEENAND.............................................256

    7.7.3 Contraste de pertenencia a un conjunto: clusula IN........................................257

    7.7.4 Contraste de correspondencia con patrn: clusula LIKE................................259

  • 7/22/2019 Microsoft SQL Server 2008 r2. Curso Practico

    5/9

    RA-MA NDICE 11

    7.7.5 Contraste de valor nulo: clusula IS NULL......................................................261

    7.7.6 Contrastes compuestos: clusulas AND, OR y NOT........................................262

    7.7.7 Combinacin de consultas: clusula UNION ...................................................264

    CAPTULO 8. TRANSACT-SQL. CONSULTAS MULTITABLA (JOINS)Y CONSULTAS RESUMEN ...........................................................................................269

    8.1INTRODUCCIN....................................................................................................269

    8.2JOINDEDOSTABLAS ..........................................................................................270

    8.2.1 JOINS con criterios de seleccin de filas..........................................................273

    8.2.2 JOINS con mltiples columnas de emparejamiento .........................................274

    8.3JOINDETRESOMSTABLAS............................................................................275

    8.3.1 JOIN con condiciones de bsqueda sin igualdad..............................................277

    8.4JOINSINTERNOSYEXTERNOS..........................................................................278

    8.4.1 JOIN EXTERNO completo...............................................................................279

    8.4.2 JOIN EXTERNO izquierdo y derecho..............................................................280

    8.5INNERJOIN.............................................................................................................2818.6LEFTJOIN,RIGHTJOIN........................................................................................283

    8.6.1 Casos especiales en consultas multitabla .......................................................... 286

    8.7CONSULTASRESUMEN.......................................................................................289

    8.7.1 Funciones de agregado en la lista de seleccin.................................................290

    8.7.2 Funcin COUNT(*) ..........................................................................................292

    8.7.3 Valores NULL en las funciones de agregado ...................................................293

    8.7.4 Tratamiento de filas duplicadas con DISTINCT ..............................................295

    8.7.5 Agrupar filas con GROUP BY..........................................................................296

    8.8RESUMIRDATOS...................................................................................................301

    8.8.1 Resumir datos con CUBE .................................................................................3028.8.2 Resumir datos con ROLLUP ............................................................................303

    CAPTULO 9. TRANSACT-SQL. SUBCONSULTAS Y USO AVANZADO DEFUNCIONES .....................................................................................................................305

    9.1SUBCONSULTAS...................................................................................................305

    9.1.1 Reglas de las subconsultas ................................................................................309

    9.1.2 Subconsultas con IN..........................................................................................310

    9.1.3 Subconsultas con operadores de comparacin..................................................312

    9.1.4 Subconsultas con EXISTS ................................................................................313

    9.1.5 Subconsultas con ANY, SOME o ALL ............................................................316

    9.1.6 Subconsultas usadas en cualquier lugar de una expresin................................3189.1.7 Subconsultas con mltiples niveles de anidamiento .........................................318

  • 7/22/2019 Microsoft SQL Server 2008 r2. Curso Practico

    6/9

    12 MICROSOFT SQL SERVER 2008 R2. CURSO PRCTICO RA-MA

    9.2SUBCONSULTASCORRELACIONADAS...........................................................319

    9.2.1 Subconsultas correlacionadas con alias ............................................................320

    9.2.2 Subconsultas correlacionadas con operadores de comparacin........................321

    9.2.3 Subconsultas correlacionadas con una clusula HAVING...............................322

    9.2.4 Unin, interseccin y diferencia en subconsultas .............................................3239.3USOAVANZADODEFUNCIONESYVARIABLES...........................................324

    9.3.1 Funciones de cadena..........................................................................................324

    9.3.2 Funciones numricas.........................................................................................327

    9.3.3 Funciones agregadas o estadsticas ...................................................................328

    9.3.4 Funciones de fechas y horas..............................................................................331

    9.3.5 Funciones de metadatos ....................................................................................334

    9.3.6 Funciones de seguridad.....................................................................................335

    9.3.7 Funciones del sistema .......................................................................................336

    CAPTULO 10. TRANSACT-SQL. LENGUAJE DE DEFINICIN DE DATOS:

    ADMINISTRACIN DE TABLAS ................................................................................33910.1INTRODUCCIN..................................................................................................339

    10.2TABLAS,COLUMNASYTIPOSDEDATOS.....................................................339

    10.3CREACINDETABLASCONCREATETABLE..............................................340

    10.3.1 Definicin de columnas...................................................................................342

    10.3.2 Restricciones de integridad .............................................................................344

    10.3.3 Restricciones de columna................................................................................350

    10.3.4 Restricciones de tabla......................................................................................352

    10.3.5 Observaciones sobre las restricciones de integridad.......................................355

    10.3.6 Limitaciones en CREATE TABLE.................................................................360

    10.4MODIFICACINDETABLASCONALTERTABLE........................................36310.5BORRADODETABLASCONDROPTABLE....................................................371

    CAPTULO 11. TRANSACT-SQL. LENGUAJE DE MANIPULACIN DEDATOS: ACTUALIZACIN DE TABLAS...................................................................373

    11.1INTRODUCCIN..................................................................................................373

    11.2AGREGARDATOS.LASENTENCIAINSERT..................................................373

    11.2.1 Insertar una fila mediante INSERT INTO...VALUES ...................................374

    11.2.2 Insertar valores NULL ....................................................................................382

    11.2.3 Insertar todas las columnas .............................................................................383

    11.2.4 Insertar varias filas mediante INSERT INTO...SELECT...............................384

    11.2.5 Sintaxis general de la sentencia INSERT........................................................38411.3ELIMINARDATOS.LASSENTENCIASDELETEYTRUNCATE ..................386

  • 7/22/2019 Microsoft SQL Server 2008 r2. Curso Practico

    7/9

    RA-MA NDICE 13

    11.3.1 Eliminar filas con DELETE............................................................................386

    11.3.2 Eliminar todas las filas con TRUNCATE TABLE.........................................391

    11.4ACTUALIZARDATOS.LASENTENCIAUPDATE..........................................392

    11.4.1 Cambiar datos con UPDATE..........................................................................393

    11.4.2 Actualizacin de todas las filas con UPDATE ...............................................39511.4.3 UPDATE con subconsulta ..............................................................................395

    CAPTULO 12. TRANSACT-SQL. ADMINISTRAR VISTAS E NDICES YLENGUAJE DE CONTROL DE TRANSACCIONES.................................................397

    12.1INTRODUCCIN..................................................................................................397

    12.2VISTAS...................................................................................................................397

    12.2.1 CREACIN DE UNA VISTA........................................................................401

    12.2.2 Vistas horizontales ..........................................................................................403

    12.2.3 Vistas verticales...............................................................................................405

    12.2.4 Vistas fila/columna..........................................................................................406

    12.2.5 Vistas agrupadas..............................................................................................40612.2.6 Vistas compuestas ...........................................................................................407

    12.2.7 Actualizacin de vistas....................................................................................408

    12.2.8 Modificacin de vistas con ALTER VIEW ....................................................409

    12.2.9 Borrado de vistas con DROP VIEW...............................................................409

    12.3NDICES.................................................................................................................410

    12.3.1 Borrado de ndices...........................................................................................418

    12.4PROCESAMIENTODETRANSACCIONES.......................................................419

    12.4.1 Sentencia BEGIN TRANSACTION...............................................................421

    12.4.2 Sentencia COMMIT TRANSACTION........................................................... 422

    12.4.3 Sentencia COMMIT WORK...........................................................................42212.4.4 Sentencia SAVE TRANSACTION................................................................. 423

    12.4.5 Sentencia ROLLBACK TRANSACTION .....................................................424

    CAPTULO 13. ADMINISTRAR SQL SERVER 2008 ................................................427

    13.1CONCEPTODEINSTANCIA...............................................................................427

    13.1.1 Servicios de instancias ....................................................................................428

    13.2ADMINISTRACINDEBASESDEDATOS:CREACIN,MODIFICACINYELIMINACIN...................................................................................................431

    13.2.1 Creacin de una base de datos mediante Transact-SQL.................................433

    13.2.2 Modificacin de una base de datos mediante Transact-SQL..........................435

    13.2.3 Eliminacin de una base de datos mediante Transact-SQL............................43913.3ADMINISTRACINDEINSTANCIAS...............................................................439

  • 7/22/2019 Microsoft SQL Server 2008 r2. Curso Practico

    8/9

    14 MICROSOFT SQL SERVER 2008 R2. CURSO PRCTICO RA-MA

    13.4INICIAR,PAUSARYDETENERSQLSERVERDESDEELADMINISTRADORCORPORATIVOYSISTEMAOPERATIVO.....................440

    13.5INICIAR,PAUSARYDETENERSQLSERVERDESDESQLSERVERCONFIGURATIONMANAGER ...........................................................................446

    13.6INFORMACIN

    SOBRE

    BASES

    DE

    DATOS

    Y

    SUS

    OBJETOS ....................... 449

    CAPTULO 14. ADMINISTRAR LA SEGURIDAD. LENGUAJE DE CONTROLDE DATOS CON TRANSACT-SQL..............................................................................453

    14.1INTRODUCCIN..................................................................................................453

    14.2SEGURIDADDEINSTANCIA.............................................................................454

    14.3AUTENTICACINYADMINISTRACINDEUSUARIOS .............................457

    14.3.1 Crear una contrasea de usuario para acceso a SQL Server...........................457

    14.3.2 Crear una cuenta de inicio de sesin en SQL Server ......................................459

    14.4SEGURIDADDEBASEDEDATOS....................................................................464

    14.4.1 Conceder a cuentas de SQL Server el acceso a una base de datos .................464

    14.4.2 Usuarios por defecto de la base de datos ........................................................465

    14.5FUNCIONES(ROLES)DEBASEDEDATOS ....................................................467

    14.6ADMINISTRARPERMISOSSOBREOBJETOSDEBASEDEDATOS ...........472

    14.6.1 Conceder permisos con TRANSACT-SQL: la sentencia GRANT ................474

    14.6.2 Denegar permisos con TRANSACT-SQL: la sentencia DENY.....................476

    14.6.3 Revocar permisos con TRANSACT-SQL: la sentencia REVOKE................477

    CAPTULO 15. COPIAS DE SEGURIDAD Y RESTAURACIN DE BASES DEDATOS. IMPORTACIN Y EXPORTACIN............................................................ 479

    15.1INTRODUCCIN..................................................................................................479

    15.2MODELOSDERECUPERACIN .......................................................................479

    15.2.1 Recuperacin simple: copias de seguridad de bases de datos completas .......480

    15.2.2 Crear una copia de seguridad completa de base de datosmedianteTransact-SQL: la sentencia BACKUPDATABASE......................................483

    15.2.3 Recuperacin simple: copias de seguridad diferencial de bases de datos.......484

    15.2.4 Crear una copia de seguridad diferencial de base de datos medianteTransact-SQL: la sentencia BACKUP DATABASE......................................485

    15.2.5 Recuperacin simple: restaurar una copia de seguridad completa de basede datos............................................................................................................485

    15.2.6 Restaurar una copia de seguridad completa de base de datos medianteTransact-SQL ..................................................................................................488

    15.2.7 Recuperacin simple: restaurar una copia de seguridad diferencial de basede datos............................................................................................................489

    15.2.8 Restaurar una copia de seguridad diferencial de base de datos medianteTransact-SQL ..................................................................................................489

  • 7/22/2019 Microsoft SQL Server 2008 r2. Curso Practico

    9/9

    RA-MA NDICE 15

    15.2.9 Recuperacin completa: copias de seguridad de registro de transacciones....489

    15.3CREARUNACOPIADESEGURIDADDELREGISTRODETRANSACCIONESMEDIANTETRANSACT-SQL..........................................491

    15.3.1 Recuperacin de registro masivo ....................................................................492

    15.3.2 Recuperar bases de datos sin restaurar mediante Transact-SQL ....................49315.3.3 Reiniciar operaciones de copia de seguridad y restauracin interrumpidas

    mediante Transact-SQL...................................................................................493

    15.4ADMINISTRARCOPIASDESEGURIDAD........................................................494

    15.4.1 Dispositivos de copia de seguridad.................................................................494

    15.4.2 Informacin de copias de seguridad................................................................496

    15.4.3 Comprobacin de copias de seguridad............................................................497

    15.5COPIAROMOVERBASESDEDATOSENTRESERVIDORES:ASISTENTEPARACOPIARBASESDEDATOS ..............................................498

    15.6LASENTENCIABACKUP...................................................................................504

    15.7LASENTENCIARESTORE .................................................................................506

    15.8IMPORTACINYEXPORTACINDEDATOS................................................50815.8.1 Herramienta BCP ............................................................................................509

    15.8.2 Asistente de importacin y exportacin con DTS...........................................512

    15.8.3 Importacin de datos de Microsoft Access.....................................................515

    15.8.4 Importacin de datos de Microsoft Excel .......................................................518

    15.8.5 Exportacin de datos a Microsoft Excel .........................................................522

    15.8.6 Exportacin de datos a Microsoft Access .......................................................524

    15.9ADJUNTARYSEPARARBASESDEDATOS ...................................................526

    15.10DESCONECTARYCONECTARUNABASEDEDATOS ..............................529

    15.11REDUCIRUNABASEDEDATOS....................................................................532

    15.12REFLEJARUNABASEDEDATOS ..................................................................534

    NDICE ALFABTICO...................................................................................................537