SQL Server: Como restaurar una BD de SQL Server 2008 R2 en versiones previas de SQL Server!

Pues esto es lo que me tocó averiguar el otro día cuando al intentar restaurar un backup realizado en SQL Server 2008 R2 en un SQL Server 2008 me encontré con el siguiente error tan bonito:

  • “…bla bla…The database was backed up on a server running version 10.50.1617. That version is incompatible with this server, which is running version 10.00.5500…bla bla …”….tras acordarme de la familia de quien hizo el backup me puse manos a la obra para buscar una alternativa a instalar SQL Server 2008 R2 que me permitiese poder disponer de una réplica de la BD en mi SQL Server 2008.
  • La alternativa pasa por crear un script del esquema y de los datos de la BD usando para ello las capacidades de SQL Server Management Studio. En concreto a través de las opciones “Tasks –> Generate Scripts” disponible en el menú contextual de la base de datos en cuestión.
  • De esta forma se inicia un asistente para crear dichos scripts.
image image image
  • La siguiente ventana del asistente nos permite seleccionar entre  crear un script de la BD completa o de sólo ciertos objetos de la misma. En mi caso me interesa la BD completa.
  • A continuación se muestra una ventana dónde especificaremos la ruta dónde guardar el script a generar y dónde a través del botón “Advanced” podremos configurar las propiedades adecuadas para generar un script compatible con SQL Server 2008.
  • En la propiedad “Script for Server Version” podemos elegir entre SQL Server 2000, 205, 2008 o 2008 R2. En mi caso he escogido SQL Server 2008. En la propiedad “Type of data to script” podemos elegir una de las siguientes opciones: “Data only”, “Schema Only” o “Schema and data”. En mi caso he escogido la última opción.
image image image
  • Dependiendo de la BD el script generado será más o menos grande lo qué puede ser un problema y dar lugar a errores en su generación en caso de qué su tamaño sea muy grande. En mi caso, el script generado tiene nada menos que 102 MB de tamaño.
  • Una vez generado el script, toca la prueba del algodón: ejecutarlo en una instancia de SQL Server 2008…antes de ejecutarlo aviso a navegantes, revisar que los path de creación de los archivos de la BD estén bien ya que el script tardará bastante en ejecutarse si es pesado y si falla, os podéis encontrar con problemas de out of memory (lo sufrí en mis carnes en mis pruebas…no comments).
  • Interesante también la cantidad de memoria que consume la ejecución de este script infernal.
image image image
  • Tras unos minutos de tensa espera rezando porque el script se ejecute sin problemas y se cree la BD, llegamos aparentemente a un final feliz.

image

Fuente: http://social.msdn.microsoft.com/Forums/en-IE/sqlsetupandupgrade/thread/7eabf4fe-fa69-440b-9327-13cd19630735

SQL Server 2008 R2: Disponible la primera CTP del SP1!

Tal y como podéis leer en el blog del equipo de SQL Server, ya tenemos disponible para descargan la primera CTP (Community Technology Preview) del Service Pack 1 (SP1) de SQL Server. Esta CTP contiene las actualizaciones acumuladas (1 a 6) de SQL Server 2008 R2 así como una serie de fixes a errores reportados por clientes y una serie de mejoras como:

  • Dynamic Management Views.
  • ForceSeek para mejorar el rendimiento de consultas.
  • Data-Tier Application Componente Framework (DAC Fx) que mejora la actualización de aplicaciones de BD’s tanto On-Premises como SQL Azure.
  • Control de espacio de disco para PowerPivot.

Más información del SP1 en:

SQL Server 2008 R2: Trabajo con los Master Data Services (I)!

Después del primer post introductorio a los Master Data Services (MDS) que forman parte de SQL Server 2008 R2, comenzamos una nueva serie en la que trataremos de ver como se trabaja con esta nueva característica de la plataforma de datos de Microsoft. En concreto, en este post veremos una primera instalación de MDS:

  • Algo que tenemos que tener en cuenta con los MDS es que no se instalan con el asistente de instalación de SQL Server, sino que tenemos que buscar la carpeta en el DVD o la imagen de SQL Server 2008 R2 que contiene el archivo de instalación.
  • Ejecutamos dicho archivo para que se inicie el asistente de instalación. Pulsamos “Siguiente” en la primera pantalla y a continuación aceptamos el correspondiente contrato de licencia.
image image image
  • Especificamos la información de registro y a continuación seleccionamos las características de MDS a instalar.
  • En la última pantalla de esta fase de la instalación pulsamos el botón “Instalar” para que se inicie el correspondiente proceso.
image image image
  • Una vez que concluya el proceso de instalación pulsamos “Finalizar”. Como resultado, se muestra la ventana de configuración de MDS en la que podemos observar el resultado de la instalación y también podemos deducir cuales son los siguientes pasos: crear la BD de MDS y el sitio web de configuración. Fijaros en que en mi caso tengo un warning relativo a IIS. El problema en mi caso se debe a que no había añadido el rol de IIS a mi servidor, lo añadimos y el warning se va el solito Sonrisa.
image image image

Y hasta aquí llegaría este primer post sobre el trabajo con MDS. Pero antes de acabar, os comento un problema con el que me he encontrado: MDS no instala bien si tienes un controlador de dominio en tu máquina. El problema que genera es que no te permite crear el sitio web y se pude solventar de forma manual realizando algunas modificaciones un tanto engorrosas.

SSRS 2008 R2: Algunas novedades (VI)!

Siguiendo con la serie de posts sobre novedades de SSRS 2008 R2, en esta ocasión toca hablar de la posibilidad que brinda SSRS 2008 R2 de exportar cualquier informe como una fuente de datos ATOM que luego podamos consumir  en SQL Server PowerPivot. Como siempre, antes de empezar os recuerdo los posts previos de la serie:

Como os decía, SSRS 2008 R2 permite exportar un informe como una fuente de datos ATOM que luego podemos usar en PowerPivot ya que:

  • Se incluye una nueva extensión de renderizado que permite exportar un cierto informe como una fuente de datos ATOM. El archivo de datos podrá ser consumido luego por cualquier aplicación que consuma este tipo de fuentes como es el caso de PowerPivot.

image

  • En el caso de PowerPivot, lo único que tendremos que hacer es instalar el AddIn para Excel y consumir la fuente. De esta forma, tendremos los datos del informe en Excel disponibles para ser explotados con las características de PowerPivot.
image image

Y hasta aquí llega el sexto post de la serie sobre novedades en SSRS 2008 R2.

SSRS 2008 R2: Algunas novedades (V)!

Siguiendo con la serie de posts sobre novedades de SSRS 2008 R2, en esta ocasión toca hablar de la nueva característica disponible en SSRS 2008 R2 para definir componentes compartidos entre múltiples informes. Como siempre, antes de empezar os recuerdo los posts previos de la serie:

En lo que a componentes compartidos se refiere, en SSRS 2008 R2 tenemos la posibilidad de:

  • Definir datasets compartidos que podamos re-utilizar en diversos informes. De esta forma, estamos definiendo una única consulta que se puede utilizar múltiples veces entre estos informes. Un dataset compartido se identifica en BI Management Studio, Repot Builder o Repor Builder mediante una flechita en la parte inferior del símbolo que representa el dataset.

image

  • Definir partes de informe, con SSRS 2008 R2 podemos publicar regiones de datos como componentes separados que pueden ser usados por otros desarrolladores en otros informes. Esta característica resulta especialmente interesante cuando es importante mantener cierta consistencia en el diseño de informes. La única pega es que todos estos componentes compartidos que publiquemos (en la Report Gallery) sólo pueden ser re-utilizados en Repot Builder 3.0.

image

Y hasta aquí llega el quinto post de la serie sobre novedades en SSRS 2008 R2.

SSRS 2008 R2: Algunas novedades (IV)!

Siguiendo con la serie de posts sobre novedades de SSRS 2008 R2, en esta ocasión toca hablar de las nuevas características que nos encontraremos a nivel de visualización de datos. Como siempre, antes de empezar os recuerdo los posts previos de la serie:

Volviendo a las novedades en visualización de datos, tenemos las siguientes:

  • Barras de datos, que no deja de ser un tipo especial de gráfico que muestra un único punto en una barra horizontal o en una columna vertical. La longitud de cada barra nos permite determinar de manera visual como de lejos o cerca estamos con respecto a un cierto ratio.

image

  • Minigráficos, que frente a las barras de datos permiten mostrar múltiples puntos en el tiempo para mostrar visualmente cuál es la tendencia en un cierto rango de datos. Como sabéis, los minigráficos también aparecen en Excel 2010.

image

  • KPIs, podemos definir de forma sencilla indicadores utilizando para ello un conjunto de iconos disponibles que se pueden configurar fácilmente para crear KPIs.

image

  • Finalmente, los mapas nos permiten crear informes en los que añadamos de forma sencilla datos sobre un mapa que además puede estar integrado con Bing Maps para una visualización más rica e interactiva.

image

Y hasta aquí llega el cuarto post de la serie de novedades sobre SSRS 2008 R2.

SSRS 2008 R2: Algunas novedades (III)!

Siguiendo con la serie de posts sobre novedades de SSRS 2008 R2, en esta ocasión toca hablar de las nuevas características que nos encontraremos a nivel de diseño. Antes de empezar. os recuerdo los posts previos de la serie:

A nivel de características de diseño, en SSRS 2008 R2 tenemos las siguientes novedades:

  • A nivel de paginación, podemos especificar nuevas propiedades para controlar cuando habilitar/deshabilitar las configuraciones de saltos de páginas, resetear la cuenta de páginas a cero o especificar el nombre de una página del informe en función del tipo de renderizado. Por ejemplo, para deshabilitar el salto de página en el caso de usar como renderizado EXCEL y especificar el nombre de cada hoja en el archivo sería:
image image
  • Alineación de datos, la propiedad DomainScope para un grupo nos permite completar aquellos huecos que aparecen cuando faltan datos y conseguir una buena alineación de los mismos. Por ejemplo:

image

  • Orientación de cajas de texto, la propiedad WritingMode nos permite mostrar el texto normalmente de forma horizontal. En SSRS 2008 R2, dicha propiedad admite el valor Rotate270 que permite mostrar el texto verticalmente. El resultado sería el siguiente:

image

Y hasta aquí llega este tercer post sobre novedades en SSRS 2008 R2.

SSRS 2008 R2: ¿Cómo añado más mapas a la galería de mapas disponibles?

Como sabéis, una de las novedades que incorpora SQL Server Reporting Services 2008 R2 (SSRS 2008 R2) es la posibilidad de definir informes tipo mapa ya sea a través del Report Builder 3.0 o del Business Intelligence Managament Studio. Por defecto, cuando vamos a crear un informe de tipo mapa únicamente tenemos la posibilidad de usar un mapa de EE.UU.

image image image

¿Cómo podemos añadir nuevos mapas a la galería para poder usar otros países? Pues en primer lugar, visitando la correspondiente página de proyecto en Codeplex: MapGallery of Reporting Services in SQL Server 2008 R2. A partir de aquí:

  • Nos descargamos alguno de los mapas disponibles en la sección de descargas del proyecto. Por cierto, ya tenemos disponible uno para España Guiño.
  • Intentamos seguir los pasos comentados en este post para añadir el mapa descargado (por cierto, es un .rdl Lengua fuera) a la galería de mapas de nuestro servidor de informes. Digo que intentamos, porque el post está en portugués, aunque fácilmente se puede deducir que hay que hacer:
    • Nos vamos a nuestro entorno a la siguiente ruta C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\MapGallery.
    • Creamos una carpeta denominada “Spain” y copiamos en ella el archivo “Spain.rdl”.
    • Lanzamos el Business Intelligence Development Studio y comprobamos que al intentar crear un informe tipo mapa, aparece la opción de España que antes no aparecía.
image image image
  • Si lanzamos el Report Builder, también tendremos la posibilidad de utilizar la nueva forma geográfica siguiendo los pasos que se comentan en este post

Y hasta aquí llega este post sobre como añadir nuevas superficies geográficas para crear informes de tipo mapa en SSRS 2008 R2.

SSRS 2008 R2: Algunas novedades (II)!

Siguiendo el orden de algunas de las novedades de SQL Server Reporting Services 2008 R2 que resumí en este post, en esta ocasión vamos a comentar algunas de las novedades en lo que al uso del lenguaje de expresiones de SSRS 2008 R2 se refiere. Entre las mismas tenemos las siguientes novedades:

  • Funciones de lookup, SSRS 2008 R2 incorpora tres nuevas funciones de lookup que permiten combinar datos de dos datasets diferentes que tengamos definidos para crear nuestro informe. Estas funciones nos permiten localizar datos a partir valores coincidentes en dos datasets diferentes. Las funciones disponibles son:
    • Lookup, para localizar datos en base a relaciones 1 a 1 entre los dos datasets.
    • MultiLookup, también para relaciones uno a uno entre los dos datasets. La diferencia con la función anterior es que como entrada a la función se utiliza un conjunto de valores que SSRS 2008 R2 busca en el dataset de destino y se devuelve un array de datos del mismo.
    • Lookupset, para relaciones 1 a N entre los dos datasets. En este caso la entrada es un único valor y se obtiene como salida un array e valores del destino.
   1: =Lookup(<Field1_Key>, <Field2_Key>, <Field_Return>, "Dataset2")

  • Agregación de agregaciones, es decir, se puede utilizar el resultado de una función de agregación como entrada de otra función de este tipo. Además, podemos se puede ordenar por valores agregados. Por ejemplo, combinar las funciones Sum() y Avg() implicaría una expresión como la que sigue:
   1: =Avg(Sum(Fields!SalesAmount.Value,"EnglishMonthName"), "CalendarYear")

  • Expresiones condicionales según el formato de renderizado, a través de la variable global RenderFormat podemos controla el aspecto de un informe dependiendo de la extensión (formato) de renderizado a utilizar. El uso normal de esta variable sería el siguiente:

image

 

  • Nuevas variables para tener una cuenta global del número actual y total de páginas de un informe. Estas variables son OverallPageNumber y OverallTotalPages y están definidas en la colección Globals que engloba a todas las variables globales de SSRS como bien sabéis. Ni que decir tiene, que estas variables sólo se puedne usar en la cabecera o pie de página del informe. Un ejemplo de uso de estas nuevas variables sería el siguiente:

image

  • Escritura/Lectura de una variable de informe, SSRS 2008 R2 permite especificar el valor de una variable del informe (no soportado en versiones previas) utilizando el método SetValue de dicha variable.
   1: =Variables!MyVariable.SetValue(Now())

Y hasta aquí llega este segundo post sobre novedades de SRRS 2008 R2.

SSRS 2008 R2: Ejemplos de expresiones!

Cuando estamos creando informes de SQL Server Reporting Services (SSRS), muchas veces no nos vale con utilizar directamente campos de un origen de datos concreto, sino que tenemos que hacer un tratamiento de los mismos y componer la correspondiente expresión. Por ejemplo, contar de forma condicional las veces que un campo contiene un cierto valor. Por suerte, y para crear estas expresiones, tenemos una serie de referencias bastantes útiles en la red como: