Mostrando entradas con la etiqueta SQL Server 2012. Mostrar todas las entradas
Mostrando entradas con la etiqueta SQL Server 2012. Mostrar todas las entradas

viernes, 26 de febrero de 2016

Importar y Exportar Datos con SQL Server 2012

IMPORTAR DATOS DE EXCEL A TABLA DE LA BD CON SQL SERVER 2012

Si tenemos los datos en una Excel y queremos importarlos en una tabla (ya creada) de nuestra BD en SQL Server 2012 haremos lo siguiente:

1. Damos clic derecho en la BD y elegimos las opciones “Tareas”->”Importar Datos” y se abre el “Asistente para importación y exportación de SQL Server” y “Siguiente”.


2.    Seleccionamos un origen de datos,  en este caso, el Microsoft Excel, marcamos la opción “La primera fila tiene nombres de columna” (si en el Excel lo tienes así)


3.    Y seleccionamos el Destino, que en nuestro caso es el Servidor y elegimos el método de autenticación.


 4.    Especificamos si deseamos copiar los datos de las tablas o vistas de la BD de origen o si queremos escribir una consulta SQL.


5.    Ahora seleccionamos el Destino, en este caso la tabla de la BD, porque el origen será el archivo Excel ya seleccionado. Veamos el botón “Editar asignaciones” que tenemos abajo en la ventana.


Si damos clic en “Editar asignaciones” podremos elegir qué campos del origen se relacionan con los del Destino.


6.    Revisamos la asignación de tipos  para comprobar que todo está correcto.


7.    Nos muestran información sobre el origen y destino de los datos, damos clic en “Finalizar”


8.    Y si todo ha ido bien, nos muestra el mensaje de que la ejecución se ha realizado correctamente y Cerramos la ventana.



EXPORTAR DATOS DE LA TABLA DE LA BD DE SQL SERVER 2012 A UN EXCEL

Si tenemos los datos en una tabla en la BD y queremos exportarlos a un Excel haremos lo siguiente.

1.    Damos clic derecho en la BD y elegimos las opciones “Tareas”->”Exportar Datos” y se abre el “Asistente para importación y exportación de SQL Server” y “Siguiente”.





2.    Seleccionamos el origen de datos, en este caso será nuestro Servidor, y elegimos el método de autenticación.


3.    Ahora seleccionamos el destino de los datos que será nuestro Excel, para ello he creado previamente un Excel vacío, así que buscaré la ruta. Marcamos la opción “La primera fila tiene nombres de columna” en caso de que así sea.


4.    Especificamos si deseamos copiar los datos de las tablas o vistas de la BD de origen o si queremos escribir una consulta SQL. Vemos ambos ejemplos.




Opción 1-
Escribir una consulta para especificar los datos que se van a transferir:


 

 Opción 2- Copiar los datos de una o varias tablas o vistas

Seleccionamos la tabla de Origen (donde se encuentra los datos que queremos importar) y en el destino la Hoja del Excel donde lo pondremos y “Siguiente”.


5.    Ejecutamos paquete y “Finalizar”


martes, 13 de octubre de 2015

SQL Server 2012 - Salto de la numeración de la Identidad

No sé si les ha pasado alguna vez pero a mí me pasó hoy este problema por eso les comento la solución por si les puede servir de ayuda.

Estaba insertando registros en mi BD en SQL Server 2012 y de repente hubo un salto en el incremento de los registros de mi columna especificada con Incremento de Identidad 1.

Como se puede observar en la imagen, hay un incremento de casi 1000 en la numeración.


Según estuve leyendo se debe a una posible actualización y reinicio del Windows Server 2012. 


Para solucionarlo abrimos el "Administrador de Configuración de SQL Server" y damos clic derecho en el nombre de nuestro Servicio y elegimos “Propiedades”.



En la opción de “Parámetros de Inicio” incluimos la bandera “-T272” (Trace Flag -T272) con lo que evitaremos estos saltos en la numeración.


Si nos sale un mensaje de advertencia, damos clic en OK y Reiniciamos el servicio de SQL Server.


martes, 16 de diciembre de 2014

Problemas en SQL Server con el caracter ª

Por si se les presenta en alguna ocasión este problema, aquí les dejo la solución.

Resulta que estaba intentando hacer la siguiente consulta en SQL Server 2012, en una Base de Datos con Intercalación "Modern_Spanish_CI_AI".

SELECT * FROM tabla WHERE name like '%'ª'%'

He incluso probé con el código ASCII de  ª que es el 170

SELECT * FROM tabla WHERE name like '%'+char(170)+'%'

Pero al ejecutar la consulta me devolvía nombres con "a", la solución para casos como estos es, colocarle COLLATE Latin1_General_CI_AS


SELECT * FROM tabla WHERE name like '%'ª'%'  COLLATE Latin1_General_CI_AS

Y así muestra los resultados esperados, ver además:

Códigos ASCII: http://ascii.cl/es/codigos-html.htm

Consulta SQL que devuelve el símbolo y su código ASCII:

DECLARE @nstring nchar(8);
SET @nstring = '-ª';
SELECT UNICODE(SUBSTRING(@nstring, 2, 1)) as codigoASCII_Dec, 
   NCHAR(UNICODE(SUBSTRING(@nstring, 2, 1))) as simbolo;
GO