Anuncios

viernes, 24 de diciembre de 2010

Importación de datos masiva en Integration Services (Bulk Insert Task)

La tarea de inserción masiva o Bulk Insert Task, es una herramienta muy veloz para importación masiva de datos de texto a Bases de datos.
Para ver cómo funciona, voy a crear un archivo de texto con datos de usuarios separados por comas:

Nombre de archivo:
TextoAImportar.txt

Contenido de archivo:
Juan,Revollo,jrevollo@hotmail.com
Pedro,Rojas,projas@hotmail.com
Ahora, en SQL Server creo mi tabla que importará los datos del archivo txt.


El siguiente paso es crear una tabla que importe la información del texto en SQL Server:

CREATE TABLE [dbo].[tablabulk](
      [Nombre] [varchar](50) NOT NULL,
      [Apellido] [varchar](50) NOT NULL,
      [Email] [varchar](100) NOT NULL
) ON [PRIMARY]

Uso de SQL Server Business Intelligence Development Studio (BIDS)
El último paso es importar los datos del archivo TextoAImportar.txt a nuestra tabla tablabulk.
Vamos a utilizar Integration Services.
BIDS viene con SQL Server. En BIDS se crea un proyecto nuevo de Integration Services y se arrastra la tarea de Bulk Insert (Inserción masiva).
En la gráfica muestro las propiedades más importantes.


Lo que sigue es presionar Start Debugging. Si todo salió bien, al hacer un select * from dbo.tablabulk, los datos del archivo TextoAImportar.txt se deberían haber cargado en la tabla.



jueves, 23 de diciembre de 2010

Cómo hacer consultas de SQL Server a Active Directory

Como si no tuviera nada útil que hacer, voy a dedicarme ahora a mostrar cómo guardar y trabajar con SQL Server y Active Directory.
Active Directory es una base de datos del Sistema operativo Windows que guarda información corporativa de usuarios, teléfonos, direcciones, impresoras, carpetas compartidas, etc.

En muchos casos, la gente desea importar la información de Active Directory en bases de datos. En este caso, les voy a enseñar cómo hacer consultas de SQL Server a Active Directory.

El primer paso, es crear un linked server. Este es un link que hace SQL Server con otras bases de datos. Con SQL Server puedo hacer consultas a Access, Oracle, MySQL, etc. En este caso desde SQL Server voy a hacer es conectarme y crearme un link de SQL Server a Active Directory.

En SQL Server Management Studio ejecuto las siguientes sentencias:

EXEC sp_addlinkedserver 'ADSI', 'Active Directory Services 2.5',
'ADSDSOObject', 'adsdatasource'
GO

He creado un linked server llamado ADSI que se conecta a Active Directory.
El siguiente paso es habilitar la opción para hacer consultas distribuidas. Para eso hay que habilitar las opciones avanzadas primero y luego habilitar la opción indicada:

sp_configure 'show advanced options', 1
reconfigure with override


sp_configure 'Ad Hoc Distributed Queries', 1
reconfigure


Ahora vamos a mostrar a los usuarios del contenedor Users de Active Directory, del dominio contoso.com

SELECT [Name], SN [Last Name], ST State
FROM OPENQUERY( ADSI,
   'SELECT Name, SN, ST
   FROM ''LDAP://ADSISrv/ CN=Users,DC=contoso,DC=com''
   WHERE objectCategory = ''Person'' AND
      objectClass = ''contact''')

SELECT * FROM OpenQuery(ADSI, 'SELECT * FROM ''LDAP://OU=marketing,DC=contoso,DC=com'' WHERE objectCategory=''user'' ')

En este siguiente ejemplo estoy creando una tabla llamada ListaUsuarios y le estoy pasando los datos de Active Directory.

SELECT *
INTO ListaUsuarios
FROM OpenQuery(ADSI, 'SELECT name,
mail, logonHours,pwdLastSet,creationTime,
forceLogoff,lockoutDuration,
lockOutObservationWindow,displayName,
userPrincipalName
FROM ''LDAP://OU=Marketing,DC=contoso,DC=com'' WHERE objectCategory=''user'' ')


Entendiste el artículo ?, te perdiste ?, esto era chino ?, 不明白嗎?,muy fácil ?, escribe tus comentarios y dudas a este blog.

jueves, 16 de diciembre de 2010

Becado en Suiza un Boliviano informático.

No tiene pinta de boliviano típico no ?. Se aclimata rápido

O me voy o me quedo, es la principal pregunta que se hacen los latinos sobre Sudamérica. Algunos se quedan, algunos buscan nuevos rumbos, algunos triunfan, algunos se hunden. En la vida uno no está nunca 100% feliz ni 100% triste.  
Siguiendo los temas de bolivianos en Estados Unidos, España y Japón. Ahora presento a un gran amigo que aceptó entrevistarse para el blog.
Se trata de Cievoloth Coca, un boliviano que ganó la famosa beca Patiño y ahora está haciendo su Maestría en Ingeniería de Sistemas en Suiza.
Acá les va la entrevista 

1. Cievoloth Coca. Háblanos un poco de ti para conocerte. Quién eres, donde estas estudiando ahora.
Soy un extraterrestre que llego hace 28 anos a este planeta, originalmente aterrice en una tierra bendita, algunos dirían que es el paraíso, del que alguna vez fueran expulsados Adan y Eva, y si... estoy hablando exactamente de Tarija :), que está en Bolivia entre otras cosas. hahaha :).
Hablando un poco más en boliviano (que se extraña a ratos por estas tierras nórdicas lejanas), soy un chapaco alzau querendón (de Tarija, Bolivia y que es medio engreído y que se hace querer) de su pago, que llegó a este planeta un 21 de Septiembre. Me crié por todo lado en Bolivia. Mi padre es milico (militar), así que tocó hacer las maletas muy seguido, gracias a eso no tengo acento definido, es decir que soy chapaco que no canta y no bebe. Hice mis estudios básicos, medios, Universitarios y algún diploma por ahí en Cochabamba, entré el CEIVO (mi colegio) y la EMI. Estoy felizmente casado con una mujer bella en todo sentido. Respondiendo a tu última pregunta ahora estoy en el primer semestre de una maestría en Computer Science en l'Ecole Politecnique Federal de Lausanne en Suiza.
Biblioteca en Suiza

 
2. Cómo conseguiste la beca Patiño ?. Qué pasos hay seguir ?
Me pasó el dato hace ya un año un tal Jean-Paul, que estoy seguro que conoces (Jean Paul Calbimonte un ingeniero de sistemas excéntrico que suele dar conferencias de sus investigaciones de doctorado en países tan lejanos como Grecia y China). Toda la información que necesitas está publicada en este sitio.

3. Qué opinas del nivel de estudios en Suiza comparado con Bolivia ?
hmmmmm, hay mucha diferencia... con temor a equivocarme, creo que el ser humano mas corcho de Bolivia no ha alcanzado nunca en su vida un cuarto del nivel de estudio que se necesita acá en ninguna materia por mas "fácil que sea". No te dan las cosas digeridas, siempre tienes que investigar más de lo que te dan en clases, y los exámenes son de esos temas que investigaste. Si quieres tener buenos resultados hay que alcanzar el nivel de los profes. No es algo fácil, no estamos acostumbrados a eso en Bolivia, así que al principio es muy duro. Incluso ahora debo admitir que no es tan evidente, pero me alegra saber que ya es menos duro que al principio.

Estos paisajes nos atraen a los latinos

4. Qué tal es la gente en Suiza. Cuáles son las mayores diferencias culturales?
Son ordenados en todo, puntuales, fríos indiferentes, porque el boliviano es frio metiche :). Puedes confiar en ellos si te dicen que harán algo, es que lo harán, no te están dorando la  perdiz.
5. Qué es lo que más extrañas de Bolivia ?.
A mi esposa.


6. Tienes alguna anécdota de un comportamiento tuyo inapropiado por falta de conocimientos de la cultura Suiza?
Solo uno, acá en las escaleras electicas hay dos lados, el de la derecha para los flojos que quieren ser llevados por la escalera y la izquierda para los que tiene apuro. Si te quedas paradote en la izquierda normalmente si alguien quiere pasar te mirara muuuuy feo, digamos que me dieron la mirada ;).
Créanlo o no el futbolín acá se juega con reglas :P, si el oponente no está tomando los mandos de defensa y tu rematas con delanteros y le metes gol, no cuenta y esa es UNA de las reglas :S, están locos los europeos (digo europeos porque jugué contra franceses también).

El clima es bien marcado


7. Qué es lo que más te choca de Suiza?
La carne es muy cara y en general, se necesita demasiado dinero para vivir por acá.
Se drogan demasiado con esa basura de mariguana y estoy harto de salir al pasillo o llegar al depar y que huela a esa m%$$##, el uso es casi equivalente a la coca en Bolivia, y el olor igual de desagradable.

8. Cuáles son tus planes a futuro?
Conquistar el mundo, jejeje.. déjame pasar el primer semestre y te cuento de a cómo van mis planes, por lo pronto es aprobar este semestre ;).
Imagino que regresar a Bolivia, intentar hacer algo de provecho por allá si el gobierno lo permite y el Evo (presidente de Bolivia) así lo quiere. (creo que ya no es una cosa de Dios ni cielo por allá). Lo que sí, ya no quiero trabajar en IT :P.
Luego está el tema familia!, dedicarme muuucho a mi hermosa familia!!, recuperar todo el tiempo perdido! ^^

Quieres saber más ?, escribe a este blog.

miércoles, 8 de diciembre de 2010

Wikileaks, el quinto poder ?.





Hace muy poco hablé sobre el poder de los bloggers indicando que el poder de transmitir la información mediante la web influye a nivel mundial. Wikileaks confirma lo que dije. Este sitio que publica información sobre abusos de diferentes países filtro información de las embajadas de los Estados Unidos y publicó la información en su sitio web.

Wikileaks, que no era muy conocido ahora es uno de los 900 sitios más populares a nivel mundial.
Estados Unidos corto los fondos de donaciones a Wikileaks, su fundador está preso (acusado de  violación y acoso).

El país más poderoso del mundo se ve en serias dificultades. No por los Coreanos del norte, no por los chinos. Su atacante, una página web de noticias filtradas.

Quién robo la información de Estados Unidos ?
Bradley Manning es el sospechoso. Un militar con acceso a información secreta. Se llevó un CD de Lady Gaga y un USB para robarse miles de documentos de alto nivel de confidencialidad.

Es legal lo que hizo Wikileaks ?
Desde todo punto de vista, lo veo como un robo. El militar que robó la información cometió traición a su patria.

Noticias calientes de Wikileaks
Son miles de noticias publicadas. Mucha gente sospecha inclusive que los Estados Unidos a propósito hizo pública esta información para debilitar a los países opositores a su régimen debido a que las noticias son muy difíciles de creer. Por ejemplo:

1. Chavez está financiado por el narcotráfico. Según los informes, Estados Unidos creía que el contacto de Chavez con los narcotraficantes es bastante estrecho. Verdad ?. Me parece difícil de creer.

2. Evo Morales, el presidente de Bolivia tiene un tumor nasal. La noticia de Wikileaks  ya fue publicada antes en un libro llamado ciudadano X. El libro afirma que Evo tenía un tumor por inhalar cocaína. De ser verdad la noticia (que el gobierno nacional negó rotundamente afirmando que tuvo el presidente una fuerte sinusitis) , el presidente tendría serios problemas con las drogas. Personalmente no lo creo.

3. Daniel Ortega, de Nicaragua tenía muy estrechas relaciones con narcotraficantes.

4. Los militares de Bolivia recibían bonos de lealtad de Venezuela.

Son noticias muy difíciles de creer. De ser verdad la mitad de esto, tanto Estados Unidos como sus opositores están manejando la asquerosa política a su más bajo nivel.
El punto es el siguiente. La información da poder y si la información cae en malas manos, las consecuencias son funestas. Vivimos un mundo donde internet puede ser usada para el bien o para el mal. De un día para otro, el mundo y todas las relaciones internacionales cambiaron de rumbo por culpa de un sitio web. 

martes, 7 de diciembre de 2010

Uso de fechas en SQL Server

Una de las dudas más comunes es cómo manejar fechas en SQL Server.


Aquí compilé las dudas más comunes.



--Mostrar fecha actual en SQL Server
Select getdate()


--Mostrar año actual en SQL Server
Select year(getdate())

--Mostrar mes actual en SQL Server
Select month(getdate())

--Mostrar dia actual en SQL Server
Select day(getdate())


--Para mostrar las fechas en formato dia, mes año dd.mm.yyyy
Select convert(nvarchar(20),getdate(),104)


--Para mostrar las fechas en formato dia, mes año dd/mm/yyyy
Select convert(nvarchar(20),getdate(),103)


Tienes más dudas ?


Escribe a este blog.

lunes, 6 de diciembre de 2010

Foros en Español para tener ayuda de expertos en SQL Server




Un excelente lugar para buscar ayuda en español a preguntas sobre SQL Server es el MSDN.

Este es un sitio de Microsoft dedicado a brindar ayuda no sólo en SQL Server, si no en .NET, Workflows, Azure, XNA, Internet Explorer, etc.

Para acceder al foro de SQL Server en español, ir a:

http://social.msdn.microsoft.com/Forums/es-ES/category/devdataes

Si usted es más alienado y prefiere el inglés:

http://social.msdn.microsoft.com/Forums/en-US/category/sqlserver

Lo bueno de este foro es que existen varios MVPs (Microsoft Most Valuable Professional). En estos meses pude comprobar que el nivel del foro es bastante bueno.

Los profesionales de ahí, están catalogados por estrellas. 5 estrellas es lo máximo (yo sigo en 1, pero apenas voy un mes). Cualquier persona de la comunidad MSDN puede contestar las preguntas que sepa. Existen moderadores que evalúan respuestas o las complementan.


 

Tienes dudas ?

Quieres saber más ?

Pregunta en este blog.