Oscar J. Berroterán

Visual Basic no es un lenguaje... es un estilo de vida
Libro de MS SQL Server 2008, gratis!!!!

Sip.

Me acaba de llegar una noticia interesante via facebook, donde se ofrece un  link para descargar sin costo un libro de SQL Server 2008.

Son 7 capítulos, que van desde manejo de seguridad y administración hasta mejoras para intelegencia de negocio... no se lo pierdan. Si desean descargarlo hagan clic sobre la imagen.

Ah!  esta en inglés :-D

Cambio & fuera

Libro de MS SQL Server 2008, gratis!!!!

Sip.

Me acaba de llegar una noticia interesante via facebook, donde se ofrece un  link para descargar sin costo un libro de SQL Server 2008.

Son 7 capítulos, que van desde manejo de seguridad y administración hasta mejoras para intelegencia de negocio... no se lo pierdan. Si desean descargarlo hagan clic sobre la imagen.

Ah!  esta en inglés :-D

Cambio & fuera

Post cruzado desde msmvps.com/blogs/oberroteran Post Cruzado desde geeks.ms/blogs/oberroteran
Felicitaciones a MUG del Centro por su incorporación a INETA Latam.

Sip.

Chamos y cham@, mil felicidades por este logro. Ya era hora  que una comunidad de Venezuela fuera incorporada a INETA.

Me alegra saber que esta generación de relevo es tan buena como la primera :-D.

Solo me resta darles las gracias a Renier, Joel, Darry, Jonas, Kensu por mantener vivo el espiritu de la comunidad.

Y claro, a todos los 99 miembros de la comunidad, mil felicidades.

Ahora, toca sacarle provecho a esta incorporación.

Para quienes no conocen INETA Latam, les recomiendo hagan clic aqui

Cambio y fuera...

 

Oscar

MUG del Centro esta ahora en Facebook.

Si, eso mismo.

MUG del Centro se unió a la facebook-manía.

Acá esta el enlace: MUG DEL CENTRO, pero si mal no recuerdo deben estar registrados en facebook  para poder visualizar la pagina y unirse al grupo.

Pendiente, que vienen novedades por alli.

Cambio y fuera

Presentaciones ultimas Charlas...

Sip.

Al fin me queda un poco de tiempo para cumplir con lo prometido...

Mil disculpas por la tardanza, pero el trabajo es mucho  y el tiempo es poco.

Acá les dejo los links desde donde podrán descargar las presentaciones de las últmimas charlas que he dictado:

Desarrollo de Aplicaciones Empresariales multicapas con Visual Basic .Net, dictada en MUG del Centro.

Nuevas Caracteristicas de Visual Basic 9, dictada en las III Jornadas Tecno/Educativa CBAIJA 2008

Inteligencia de negocios: ¿Pueden los datos ayudar a su empresa?, dictada en Ciclo de Conferencias Empresa & Tecnología, organizado por LOURTEC Valencia

 

Cambio y fuera...

VB o el otro lenguaje... :-)

Jeje. Disculpen, pero mi cerebro no procesa bien las cosas que llevan ";".

En una de esos finales de días agitados, navegando por quien sabe que página me tope con el blog del gran Jorge Serrano. Para quien no conoce a Jorge, les comento que fue el creador de PortalVB (al menos eso creo yo :-p). Un portal dedicado a VB tan bueno como el del mítico Guille.

Pués bien, allí en su blog de Geeks.ms encontre muchos artículos interesantes pero hubo uno que me llamo poderosamente la atención. Su título: C# o VB, VB o C#,... la envidia me corroe.

Ja. Que puede opinar un "visualbasiquero nato" que no sea que VB es mejor que el otro lenguaje... sorpresa, no defendio a ultranza a VB. Más bien analiza imparcialmente aspectos que muchos radicales dejan de ver.

A continuación, el post de Jorge. Repito es un post de Jorge Serrano, si quieren leerlo directamente desde su blog, hagan clic aqui, si no... leanlo a continuación.

Sus comentarios son bienvenidos:

"Durante el pasado MVP Summit 2008 ha salido a colación una vez más en algunos círculos de debate en pasillos o en salas de reunión una discusión que se está convirtiendo en un clásico... ¿C# o VB?, ¿VB o C#?.

A veces la gente que usa esta tecnología tiende a discutir en exceso qué lenguaje de programación es mejor dentro de .NET.

En otras ocasiones se habla de si un lenguaje de programación tiene ciertas características o funcionalidades que no tiene el otro o si hay más usuarios en el mundo que utilicen un lenguaje de programación u otro.

Las discuciones llegan hasta el extremo de mirar con lupa que lenguaje tiene más ejemplos de código fuente para .NET en la red, o que los ejemplos que aparecen salen antes en un lenguaje que en otro, ¿C# o VB?.

Vamos... aspectos que en mi opinión no llevan a ninguna parte.

Pero las discusiones son mucho más ácidas cuando se trata el tema de las características que cubren cada lenguaje... ¿qué lenguaje de programación tiene más características novedosas que el otro no tiene o cual implementa antes las novedades que el otro?.

Todo esto se resume muy bien con una palabra,... la envidia. Las personas afines a un lenguaje sacan pecho delante de las otras e incluso a veces llegan a pavonearse un poco. En fin... que no lo entiendo.

Los equipos de VB y de C# de Microsoft comentan que entre ellos existen sinergias, comunicación fluida y para nada como intentan hacer ver algunas personas una guerra interna de ver quien saca más características al lenguaje antes que el otro. Los programadores somos por lo tanto según los equipos de trabajo de VB y C#, los que vemos fantasmas donde no los hay o los que nos empeñamos en que existan.

Durante este pasado MVP Summit 2008 tuve la oportunidad de conversar durante unos minutos en el autobus que me llevaba al hotel con uno de los responsables de Microsoft de la ayuda del IDE de Visual Studio. Sí sí, jefes o responsables de Microsoft que no tenían problemas en meterse en un autobús repleto de fogosos MVPs y entablar conversaciones sinceras muy enriquecedoras (esto me recuerda a la otra entrada que he agregado en mi blog).

Me resultaron muy curiosas las preguntas que me hizo esta persona acerca de mi opinión con respecto a las diferentes tecnologías emergentes que Microsoft tiene en marcha, de los problemas económicos en el mundo actual y su relación directa con las tecnologías, así como alguna cosa más que me encantó discutir con esta persona, pero después de eso, surgieron las típicas preguntas del lenguaje motivo de esta entrada. ¿Cuál es para mí y en mi opinión el mejor lenguaje de .NET o el que yo considero idóneo para desarrollar aplicaciones Software?.

De mi cuello colgaba la acreditación del evento, estaba claro que era MVP de Visual Basic, por lo que él mismo podía pensar que la pregunta ya tenía una respuesta clara, rápida y concisa, pero aún y así me hizo la pregunta esperando creo yo una respuesta sincera por mi parte y alejada del forofismo, algo que hice y que comparto ahora con vosotros.

Honesta y humildemente creo que le sorprendió gratamente mi respuesta por las cosas que me comentó posteriormente y que lamentablemente no puedo comentar (hay aspectos del NDA que no me lo permiten, no es que quiera dar importancia alguna a esto).

Ante esa pregunta, le contesté que no entendía muy bien las discusiones de la gente acerca de la elección de un determinado lenguaje o de qué lenguaje es mejor que otro, y que desde que salió la primera versión de .NET Framework siempre he matenido una misma opinión al respecto y de la que nunca me he movido.

Para mí, un lenguaje de programación en la plataforma .NET no es otra cosa que un skin, una piel que recubre a la tecnología. Una piel que recubre a Microsoft .NET Framework, a sus productos y a los productos de terceras compañías.

A esa piel la podemos llamar C#, VB o de otra forma, pero lo realmente importante es la tecnología, es decir, Microsoft .NET Framework y lo que alrededor de ella hay.

También le comenté que dependiendo del tipo proyecto, de la gente del proyecto (de las personas y de sus conocimientos) y de muchos más factores, a veces es óptimo utilizar un lenguaje de programación en lugar de otro pese a que tengas especial simpatía por uno de ellos.

De esa forma, le comentaba que la experiencia anterior de la gente, marca para un responsable de proyecto en muchas oasiones, el uso o la toma de decisión del que podría ser el lenguaje de programación idóneo para un determinado proyecto. Por ejemplo, para un programador que ha programado siempre en Java, yo vería con mejores ojos que su tendencia inicial fuera C# en lugar de VB. Para un programador que viene de VB 6 programando sin orden ni concierto (reglas de programación, mentalidad de orientación a objetos, nomenclatura de código, etc), vería más adecuado para él el paso a C# que a VB en un primer momento. Poco después quizás podría pasarse a VB sin problemas, pero inicialmente y para obligarse a cumplir ciertas normas y formas de trabajar, C# podría ser un buen comienzo. Para un programador VB 6 que ha sido metódico en su codificación y que tiene claros aspectos relativos a la orientación a objetos, nomenclaturas, etc., su paso natural sería VB... y así podríamos enumerar una y mil situaciones diferentes pasando incluso por FoxPro del que también hablamos.

Es decir, no existe una elección clara y cristalina que indique qué lenguaje es el idóneo o el adecuado. Dependiendo de las situaciones, puede ser en unas ocasiones uno de ellos y en otras ocasiones otro diferente. Incluso podríamos llegar al extremos de hacer que un mismo proyecto pudiera combinar partes del mismo escrito en diferentes lenguajes de programación.

No obstante, esta es mi argumentación y mi explicación. Los lenguajes son pieles, skins, que recubren a Microsoft .NET Framework. Microsoft .NET Framework es el núcleo central, el core, el corazón que es lo que realmente nos interesa utilizar, y las discusiones o preferencias de un lenguaje u otro no es lo que realmente nos debe preocupar a la hora de abordar un proyecto en .NET, sino el uso correcto de la tecnología apropiada (WCF, WWF, DataSets tipados, ADO.NET Entity Framework, Oracle, SQL Server,... etc).

Sin embargo, en el MVP Summit 2008, he podido comprobar en algunos MVP afines casi radicalmente a un lenguaje, la carencia de ampliar sus miras hacia lo que es en mi opinión más práctico y más abierto para todos, comprender en el que el lenguaje es importante, sí, pero no lo más importante. No obstante, la envidia sigue comiendo a algunas personas y después de ver algunas reaciones de MVPs (pocas pero algunas) en este MVP Summit 2008, me temo que lo seguirá habiendo durante algún tiempo. Me temo que es un tema de educación y aprendizaje el hecho de que nos demos cuenta de algunos aspectos como estos."

Cambio y fuera

Oscar

Ciudad de Héroes {Maracay}

El proximo Juevese 22 se estara realizando en Maracay el evento Ciudad de Héres {Maracay}.

 

Allí se realizará en lanzamiento de Windows Server 2008, Visual Studio 2008 y SQL Server 2008.

Este evento esta organizado por MUG del Centro, IUETLV .net y UBA.NET en Conjunto con Microsoft Venezuela.

No se pierdan esta oportunidad de asistir al evento del año!!!!

Cambio y fuera

Oscar

 

Presentaciones Pendientes

Pues sip.

Al fin estoy de vuelta y lo menos que puedo hacer es subir las presentaciones de las últimas conferencias que tenido el placer de dictar.

Acá tienen los links para descargarlas

Sesión 1 Lanzamiento de Visual Studio 2008

Introducción a Linq - I Jornardas Interuniversitarias de Ciencias de la Computación

Desarrollo de Aplicaciones Empresariales Multicapas - I Jornardas Interuniversitarias de Ciencias de la Computación

10 Reglas de oro para el desarrollo en Windows Vista - Vive Windows, Vive Vista

Si hay alguna presentación de algún evento que falte por publicar, les pido me lo hagan saber para subirla.

 

Cambio y fuera

Oscar.

Retornando...

Pues eso, acá estoy de vuelta. Meses después... mucho trabajo y algunos problemas de indole laboral han desviado mi atención...

Tengo pendiente varios post, varias presentaciones que subir  y varios artículos que publicar. Espero que tener tiempo y retomar el camino dejado...

 

Mil disculpas por la ausencia.

Cambio y fuera

Oscar

Se viene el Microsoft Andean RoadShow...

Sip, ya solo faltan 12 días para que se inicie la gira Microsoft Andean RoadShow...

Este evento estará llevando información tecnologica a Venezuela,Colombia, Ecuador y Perú.

En el Microsoft Andean Roadshow 2007 veremos  cómo enfrentar varios de los problemas que encontramos cuando creamos soluciones de software.


Todo el evento gira alrededor de una aplicación que se encarga de manejar los consumos de agua en una ciudad ficticia y la tecnología utilizada en su desarrollo y mejoras. 


En las diferentes sesiones se tocarán temas relacionados con interoperabilidad, seguridad y diseño de interfaces de usuario.

Si quieres mayor información visita: www.andeanroadshow.com  desde alli podrás conocer las últimas novedades sobre este evento asi como las fechas de visita a las diferentes ciudades.

Cambio y fuera

Oscar

Posted: Nov 12 2007, 08:34 AM by oscar | with no comments
Filed under:
El MUG Aragua evoluciona, ahora es.... MUG DEL CENTRO!!!

Sip.

Ese fue el desenlace del evento del Lanzamiento de la Alianza MUG Aragua - MUG Valencia.

A este evento asistieron cerca de 15 personas provenientes de Valencia y Maracay. Este evento organizado por el MUG Aragua buscaba estrechar los lazos de colaboración de ambas comunidades y tanto fue así, que al final se unieron en una sola MUG DEL CENTRO. Si deseas incorporarte a esta nueva comunidad, visita este link: http://groups.msn.com/mugdelcentro y haz clic en la opción UNETE AHORA.

El evento empezó con la ponencia de Jorge Oblitas de MS Perú: Analisis de requerimientos: más allá de lo evidente.  Una charla excelente de parte de Jorge donde mostro algunos tips importantes al momento de definir requerimientos. Una ponencia excelente. Gracias Jorge, por visitar nuestro estado.

Seguidamente me toco el turno: Language Integrated Query - LINQ: Un primer vistazo, donde entre otras cosas hable de los cambios en los lenguajes que han sido introducidos para permitir el uso de LINQ, si deseas descargar la ppt haz clic aqui.

Muchisimas gracias a Renier y a Joel por haberme invitado a este evento y por ponerle corazón al MUG. Muchachos la tarea no es fácil contamos con uds. y Uds. saben que cuentan conmigo

A los interesados en pertenecer al GOA (Grupo de Operacioenes y Apoyo) de MUG del Centro les pido que visiten la pág. del MUG del Cento y manifiesten su voluntad, que seguramente Joel o Rernier se pondrán en contacto con Uds.

Las fotos se las debo....

Cambio y fuera

Oscar

eBook Gratuito: Visual Studio .NET Tips and Tricks

Sip.

Cuando Jorge Oblitas me invitó a participar como ponente en una sesión "bastante cool" "tipo american idol" donde se muestren tips, cosas sencillas que le ayuden al desarrollador a ser más eficientes con VS me puse a pensar en que diablos iba a mostrar. ¿Dos tips? ¿10 mins.?. ¿Que podía mostrar que no se hubiera dicho ya?.

mmmm. Code Snippets. No. Intellisense mejorado. Tampoco. Master Pages. Nooooo. Y así estuve 3 días. Lo confieso sin ningun tipo de temor :-(

Así que me puse a navegar una noche de esas y, tataaaaaaaaaaa. "Vi la luz" como diria Jorge. Encontre un eBook sobre Tips & Tricks de VS, que de paso era gratuito:

Click to preview Visual Studio .NET Tips and Tricks

El autor es Minh T. Nguyen, un americano de origen asiatico (eso creo) que escribio este libro hace dos años. Curiosamente Minh indica que el 70% de este libro lo escribio esta escrito durante sus horas de almuerzo cuando trabajaba en San Diego. De repente esa puede ser la solución a mi prominente abdomen. :-D

Acá les dejo la reseña de este material, tomada del blog del mismo Minh:

Visual Studio .NET is one of the most versatile and extensible programming tools released by Microsoft. The number of features and shortcuts available in VS.NET is truly immense, and it grows tremendously with each release. Developers who are unaware of these timesaving features surely miss out on opportunities to increase their programming productivity and effectiveness.

Visual Studio .NET Tips and Tricks explains how to use VS.NET efficiently. Organized into short and easy-to-grasp sections, and containing tips and tricks on everything from editing and compiling to debugging and navigating within the VS.NET IDE, this book is a must-read for all .NET developers, regardless of expertise and whether they program in C#, VB.NET, or any other .NET language. This book covers the Visual Studio .NET 2002, 2003, and 2005 Beta 1 releases.

Para descargar este excelente libro, hagan clic aqui (se necesita registro)

Espero lo disfruten tanto como yo!!!

Cambio y fuera

Oscar

Realizado con éxito el lanzamiento de MUG Caracas

Sip.

Con gran éxito fue "lanzado oficialmente" el MUG Caracas el pasado 22 de Octubre.

A este evento asistieron alrededor de 50 personas quienes tuvieron oportunidad de disfrutar de tres estupendas sesiones.

La primera fue "El Show de Angel y Yonathan" dos estupendos MVP'S  quienes nos mostraron un adelanto de algunas de las caracteristicas de VS2008.

Luego se inicio la sesión más relajada de la noche: una sesion tipo American Idol donde tuvimos la oportunidad  de dar 2 tips sobre desarrollo a la audiencia. Esta sesión de este tipo (la primera realizada en venezuela) permitió  disfrutar de algunas situaciones realmente comicas. En esta sesión participamos Angel Hernandez, Herber Silva, Yonathan Arrivillaga, Edward Ocando, Miguel Gonzalez, Jorge Oblitas  y mi persona, El jurado estuvo conformado por Mary "Paula" Arcia, Manuel "Randy" Mendez  y Jorge "Simon" Oblitas. Que trio!!!!

A continuación, se monto en el escenario el "importado" Jorge  Oblitas a dar una charla de .... en realidad no se, ya que por la hora me tuve que ir, jeje.

Pero igual me contaron que estuvo super interesante la charla de Jorge.

Gracias a todos los asistentes. Gracias a Mary, Jorge y Edward por el empeño puesto para llevar a cabo este evento...

Acá hay algunas foticos del evento

    

    

Si desean ver el albúm completo hagan clic aqui

Cambio y fuera

Alianza MUG Aragua - MUG .NET Valencia

Sip.

El próximo martes 23 de Octubre, se realizará a partir de las 4:30 pm (inicio del registro)  el evento de Relanzamiento del MUG Aragua, y al mismo tiempo se estrenará una modalidad desconocida en el país, que es la alianza de las comunidades de Aragua y Carabobo.

A este evento asistirá en plan estelar el popular Jorge Oblitas, quien estará dictando una interesante charla denominada: Analisis de requerimientos: más alla de lo evidente.

Acto seguido este servidor :-) le corresponderá la sesión de cierre: LINQ: un primer acercamiento (o Introducción a LINQ, como prefieran llamarlo :-D).

Acá les dejo el afiche que ha preparado la gente de MUG Aragua para el evento:

propa5pro

En el banner tienen la dirección de registro, es importantisimo que se registren....

Salu2 y nos vemos por allá. Apoyemos al MUG que bien vale la pena...

Cambio y fuera

Oscar

Alianza MUG Aragua - MUG .NET Valencia

Sip.

El próximo martes 23 de Octubre, se realizará a partir de las 4:30 pm (inicio del registro)  el evento de Relanzamiento del MUG Aragua, y al mismo tiempo se estrenará una modalidad desconocida en el país, que es la alianza de las comunidades de Aragua y Carabobo.

A este evento asistirá en plan estelar el popular Jorge Oblitas, quien estará dictando una interesante charla denominada: Analisis de requerimientos: más alla de lo evidente.

Acto seguido este servidor :-) le corresponderá la sesión de cierre: LINQ: un primer acercamiento (o Introducción a LINQ, como prefieran llamarlo :-D).

Acá les dejo el afiche que ha preparado la gente de MUG Aragua para el evento:

propa5pro

En el banner tienen la dirección de registro, es importantisimo que se registren....

Salu2 y nos vemos por allá. Apoyemos al MUG que bien vale la pena...

Cambio y fuera

Oscar

Post cruzado desde msmvps.com/blogs/oberroteran Post Cruzado desde geeks.ms/blogs/oberroteran
ADO .Net. Guia de inicio rápido. Parte III

Tarde, pero seguro...

Estableciendo la conexión a nuestra base de datos.

Tal como se hacía en la antiguedad (o sea vb4,vb5 y vb6) en ADO .Net necesitamos conectarnos a un origen de datos para realizar cuanlquier acción, entendiendose por accion a una consulta, una inserción, una modificación, etc.

Los objetos de tipo Connection son los responsables de establecer y manejar la comunicación entre una base de datos y nuestra aplicación .Net. Este objeto es parte de un proveedor administrado, cada uno de los cuales implementa su "propia versión". Para esta serie utilizaremos el proveedor administrado de SQL Server, por lo que en esta parte me referire exclusivamente al objeto SQLConnection

Es posible crear una conexión de diferentes formas.

Conexiones en tiempo de diseño

Crear una conexión en tipo de diseño es tan fácil como insertar un  TextBox en el formulario, es decir, arrastramos el objeto SQLConnection del toolbox  y lo soltamos sobre el formulario.

Ebueno aclarar que el objeto SQLConnection no esta presente de forma predeterminada en el ToolBox, por lo que si no lo han hecho aún (y queren seguir los ejemplos) es buen momento para hacerlo. ¿Cómo?. Facil, solo basta seleccionar la opción Choose Items del menú contextual del ToolBox y posteriormente marcar el checkbox del elemento SQLConnection.

image

Usando el control SQLConnection

Solo tres pasos son necesarios

  1. Arrastar y colocar sobre el diseñador de formularios el objeto SQLConnection del ToolBox. Al finalizar esta operacion se añade al Component Tray el objeto.
  2. Cambiar modificar la propiedad Name del objeto
  3. Definan que conexión va ser utilizada, expandiendo la propiedad ConnectionString y seleccionando la conexión deseada.
image

Creación de conexiones en tiempo de ejecución

Si. Ya sé. Eso no es lo que necesitan.

Usualmente los desarrolladores no utiizan estos objetos "gráficos" o asistentes para incorporar conexiones en sus aplicaciones ya que la idea principal es que la conexión funcione en toda la aplicación, en vez de estar vinculada con un formulario.

Para poder utilizar esta opcion es necesario en primer lugar, incorporar el Namespace System.Data.SQLClient en el archivo donde vamos a utilizarlo:

Imports System.Data.SQLClient

Luego, pasamos a declarar una variable del tipo SQLConnection; esta variable es la que sera utiizada para controlar todo lo relacionado a la conexion

Dim cnNorthwind as SQLConnection

o

Dim cnNorthwind as SQLConnection

cnNorthwind = new SQLConnection

Tambien podemos utilizar esta sentencia, que sería la combinación de las dos anteriores en una sola instrucción

Dim cnNorthwind as new SQLConnection(cadenadeconexion) 

Propiedades del objeto SQLConnection

Las mas importantes son:

  • ConnectionString: define la información de la base de datos con la que se va a trabajar.Es un valor de tipo String que debe estar delimitado por comillas.
  • Connecti onTimeOut: define el tiempo maximo de espera por establecer la conexión. Si expira, se genera una excepción
  • State: un valor de tipo entero (ConnectionState)  que indica el estado actual de la conexión

La propiedad ConnectionString, a mi juicio, es la más importante de todas, ya que a través de ella, podemos definir casi todas las propiedades del objeto connection. El formato es muy sencillo y consiste en pares de claves-valores (keywords-values), separando los pares con punto y coma:

"DatSource=localhost;Initial Catlog=Northwind;Integrated Security=SSPI"

"DatSource=tuServidor;Initial Catlog=Northwind;UID=usuarioBD;PWD=contraseña"

"DatSource=tuServidor;Initial Catlog=Northwind;User Id=usuarioBD;Password=contraseña"

Los elementos a tomar en cuenta en la cadena de conexión son:

  • DataSource: nombre del servidor donde se encuentra la base de datos. Es posible utilizar "localhost" o incluso un punto "."  para indicar que la base de datos se encuentra en el servidor local
  • Initial Catalog: nombre de la base de datos. Hay que tener cuidado cuando el nombre de la base de datos incluye una comilla simple o apostrofe ('). Si ese es el caso la cadena de conexión puede generar una excepción.
  • Integrated Security: define si se usa o no la seguridad integrada entre SQL Serve y Windows. Su valor predeterminado es False. Si queremos acceder a  un servidor que no usa seguridad integrada entonces debemos definir dos elementos adicionales en la cadena de conexion
    • UID o User Id= identificación (login) de usuario
    • PWD o Password= contraseña del usuario.

Para definir la cadena de conexión, solo basta asignar la misma a la propiedad ConnectionString del objeto SQLConnection:

Dim cnNorthwind as SQLConnection

Dim strSQL as String = _

"DatSource=localhost;Initial Catlog=Northwind;Integrated Security=SSPI"

CnNorthwind = new SQLConnection

CnNorthWind.ConnectionString=strSQL

O, mas facil... menos lineas de código

Dim cnNorthW as  New SQLConnection("DatSource=localhost;Initial Catlog=Northwind;Integrated Security=SSPI")

NOTA: la propiedad ConnectionString solo puede ser alterada cuando la conexión a la base de datos ha sido cerrada.

Hasta ahora, hemos visto una técnica de establecer la cadena de conexión de una forma "cableada" o "hard-coded", es decir la cadena de conexión esta "fija" dentro del código. En casos sencillos (p. ej. demos) puede considerarse una ventaja, pero en aplicaciones grandes o comerciales no es así, ya que lo más seguro que por lo menos el nombre del servidor cambie... esto hace que esta cadena de conexión sea un candidato a ser almacenada en un archivo de recursos de la aplicación o en el archivo de configuracion (app.config o web.config)

Hagamos un ejercicio para manejar la cadena de conexion desde un archivo de configuracion:

  1. Cree una aplicacion Windows
  2. Añada un objeto SQLConnection a l diseñador de windowsforms, nombre cnNorthwind
  3. Añada una etiqueta (Label)  y escriba en su propiedad Text "Cadena de Conexión:"
  4. Agregue un control de cuadro de texto (TextBox) y nombrelo CadConexion. Asegurese de que sea multilinea.
  5. Seleccione el objeto cnNorthwind y active la ventana de propiedades
  6. Expanda la sección Application Settings (en la ventana de propiedades)
  7. Haga clic sobre PropertyBinding y luego clicsobre el botón con los puntos suspensivos que se encuentra a la derecha   image
  8. Ahora Visual Studio muestra el cuadro de dialogo Application Settings.Abra el listbox ConnectionString y haga clic sobre Newimage
  9. Visual Studio abre el cuadro de dialogo New Application Setting. En el elemento DefaultValue escriba su cadena de conexion, algo similar a "Data Source=localhost;Initial Catalog=Northwind;Integrated Security= SSPI". En el elemento name escriba SQLConnectionString. Tome en cuenta que si Ud. no ha instalado la base de datos Northwind, debe cambiar este elemento de la cadena de conexión por una base de datos que exista en su servidor. Una vez que ha definido esto hagan clic sobre el boton OK para almacenar esta información en el archivo de configuracion.                            image
  10. Observe que ahora Visual Studio actualiza la propiedad ConnectionString                                                                     image
  11. Desde el Solution Explorer abra el archivo de configuración y verifique que existe una entrada como la siguiente       image
  12. Ahora, la pregunta importante ¿cómo obtengo esa informació?. La respuesta fácil: utilizando la clase My.Settings. Probemoslo. Abra la ventana de código del formulario y escriba la siguiente línea                                         
    • CadConexion.Text = My.Settings.SQLConnecctionString
  13. Ejecute la aplicación y el resultado debe mostrar la cadena de conexión que acaba de agregar al archivo de configuración en el cuadro de texto.

Sencillo no?

Métodos del objeto SQLConnection

Todos los objetos Connection implementan una serie de métodos definidos por la clase DbConnection definida en el namespace Data.Common, y cada proveedor administrado les asigna una funcionalidad muy parecida.

  • BeginTransaction: inicia una transacción en la base de datos
  • ChangeDatabase: cambia la base de datos actual sobre una conexión abierta
  • Close: cierra la conexion a la base de datos
  • CreateCommand: crea y retorna un objeto Command asociado a la conexión
  • GetSchema: retorna la información del esquema de la base de datos
  • Open: abre la conexión a la base de datos

Obviamente, los metodos mas universalmente utilizados son Open y Close. Hay que tomar en cuenta que dentro del modelo de objetos de ADO .Net 2.0 existen objetos que pueden abrir y cerrar una conexión de forma ímplicita: DataAdapter, TableAdapter y DataCommand. Explicitamente tambien podemos abrir y cerrar conexiones claro esta:

Dim cnNorthW as new SqlConnection

cnNorhW.ConnectionString= My.Settings.SQLConnecctionString

cnNorthW.Open

........

CnNorthW.Close

Eventos del objeto Connection

Si. También tiene eventos. Dos, para ser mas especifico: StateChange el cual es definido por la clase DbConnection e InfoMessage, el cual es proporcionado por el .Net Framework.

El evento StateChange es desencadenado cuando cambia el estado de la conexion.Este evento utiliza un argumento (objeto) llamado StateChangeEventsArgs el cual es enviado al manejador del evento. Como este argumento es en realidad un objeto dos propiedades: OriginalState y CurrentState, los posibles valores para ambas propiedades son

  • Broken: la conexión esta abierta pero no funciona :-(, es necesario cerrarla y abrirla nuevamente
  • Closed: la conexion esta cerrada
  • Connecting: la conexion esta siendo abrierta, pero aún no se ha establecido
  • Executing: la conexión esta ejecutando un comando
  • Fetching: la conexión esta retornando datos
  • Open: la conexión esta abierta

Cuando utilizamos el objeto SQLConnection a traves del asistente, este automaticamente nos incorpora los  manejador de eventos en nuestra ventana de código. Sin embargo si utilizamos el objeto SQLConnection via programaticamente, nosotros tambien podemos tener acceso a los manejadorers de sus eventos. Para ello debemos utilizar la siguiente línea:

 Dim WithEvents cnNorthW as new SqlConnection

Una vez que hemos escrito esta línea pueden dar un vistazo sobre la lista de objetos de la ventana de código y desde allí podrán observar que se ha añadido el objeto SQLConnection que han declarado.

Pongamos a prueba el tema de los eventos, para ello utilizaremos el proyecto que habiamos creado en el ejercicion anterior.

  1. Añada una etiqueta y cambie su propiedad Text a "Estado de la conexion".
  2. Añada un textbox y renombrelo "EstadoConexion"
  3. Agregue 2 objetos Button, cambieles el nombre a "AbrirConexion" y "CerrarConexion" respectivamente
  4. Cambie las propiedades text de los objetos Button a "Abrir"  y "Cerrar" respecitvamente
  5. Desde la ventana de código, seleccione el objeto cnNorthWind en la lista de objetos. A continuación seleccione el evento StateChange                    image
  6. En el manejador del evento StateChange escriba el la siguiente línea
    • EstadoConecion.Text = e.CurrentState.ToString
  7. En el manejador de eventos del boton "AbrirConexion", escriba el código necesario para abrir la conexion
    • cnNorthW.Open
  8. En el manejador de eventos del boton "CerrarConexion", escriba el código necesario para abrir la conexion
    • cnNorthW.Close
  9. Ejecute la aplicación y presione el boton AbrirConexion y luego el boton CerrarConexion. Observer como varia el texto que se muestra en el cuadro de texto EstadoConexion                                             image
  10. Si por alguna casualidad (:-D) Ud. presiona 2 veces seguidas el boton AbrirConexion, se habra dado cuenta que se dispara una excepcion de tipo InvalidOperationException. Esto sucede debido que no es posible abrir una conexion que ya esta abierta.Para evitar este comportamiento, verifique el estado de la conexión antes de abrirla
    • If cnNorthW.State = ConnectionState.Closed Then CnNorthW.Open
  11. Pruebe nuevamente la aplicación...

Bien, por ahora es todo lo que tengo que contarles sobre este importante objeto. Espero les sea de ayuda y los invito a encontrarnos dentro de poco.

Ahh... de verdad que trate pero me fue imposible escribir menos :-(

Cambio y fuera

Oscar

Presentación Jornada Tecno-Educativa CBAIJA

El día viernes 28 de septiembre tuve el honor de ser invitado como ponente a las II Jornadas Tecno Educativas CBAIJA 2007.

El Centro Bolivariano de Atención Integral al Joven Aragüeño (CBAIJA) es una institución cuyo objetivo principal es brindarle una atención integral a la juventud en las áreas de becas: escolares, universitarias y ayudantias, atención medica, psicológica, social, capacitación en diversas áreas como cultura, deporte, Informática, música, otras.

En esta jornada me toco dictar 2 conferencias:

  1. Microsoft en La Academia. Un vistazo a los programas que ofrece MS a las instituciones educativas
  2. Introducción a la creación de Pág. Web: ASP .Net 2.0

A esta jornada asistieron cerca de 70 jovenes.

Acá tienen algunas fotos del evento:

HPIM0383 HPIM0396 HPIM0404 HPIM0410

Las fotos del público? Pues el amigo Fernando Cegarra, de la Comunidad del IUT La Victoria, no me las envio :-(

Para los interesados he colocado la presentación en el ftp de mi empresa, si deseas obtener una copia, haz clic aqui

Gracias a la gente de CBAIJA y mil felicidades por la exitosa jornada

Cambio y fuera

Oscar

Cambio de Horario en Venezuela

Amigos, MS Venezuela ya tiene listo la información que permitirá ajustar los relojes de los equipos al nuevo horario, pronto a entrar en vigencia (¿?). Acá tienen parte de la info:

Microsoft, como líder responsable de la industria de tecnología, pone a disposición de sus clientes y usuarios en Venezuela la solución 938977, para ajustar sus sistemas y plataformas basadas en tecnología Microsoft, a la nueva hora nacional anunciada por autoridades gubernamentales, durante los meses de septiembre del año 2007.

Esta actualización del sistema operativo Windows está disponible a nivel mundial a través de nuestro canal en línea de soporte: http://support.microsoft.com

Le recomendamos ampliamente que recurra a: http://support.microsoft.com/kb/938977 para hacer efectivo este ajuste de inmediato en sus sistemas.

Si desean mayor información clic aqui

Cambio y fuera

Oscar

Diego cumple un año...

Advertencia post no técnico....

A quien me conoce y sabe de mi afición al deporte rey, le informo que no se trata de Diego Maradona :-p

Se trata de Diego José Berroterán Medina. Mi hijo menor... que espero que se parezca al "10" (futbolisticamente  hablando no?) :-D

Si, hoy 03 de Octubre mi Dieguito cumple su primer añito de vida... y no quería dejar de pasar esta oportunidad para decirle al mundo lo mucho que lo quiero y lo feliz que me siento en este día tan especial.

La celebración la dejo para el fin de semana. Hoy más bien pensamos estar en la intimidad (jejeje) de nuestro hogar cantandole cumpleaños a Dieguito....

Hijo si algún día lees esto sabrás lo mucho que te quiero...

Acá les dejo una foto de mis dos querubines: Diego & Oscar

F

Saludos y cambio y fuera

Oscar

De vuelta a la Universidad...

Sip. Volví a mi alma mater... 17 años después.... lo bueno es que no se me olvidó el camino y menos donde comprar cafecito caliente...

El pasado Lunes 01 de Octubre, estuve junto a Davida Delgado (MS) y Alexander Jiménez (MS Student... no se que, siempre les cambian el nombre) dictando una conferencia en la Universidad Nueva Esparta, en el marco de un Festival de Instalación MS.

De verdad que me quede sorprendido de que sigue igual a como la deje en 1990... bueno espero que los salones, equipos y algunos profesores hayan cambiado... fue como una especie de retorno al pasado, apenas entré me pareció ver a algunos de mis amigos y amigas charlando en la entrada del rectorado o tomando el desayuno en la cantina.... y hasta me senti mas delgado  y con una prominente melena.... bueno, el efecto duró poco, pero en sintesis fue muy reconfortante volver a mi antugua casa de estudios.. Debo mencionarles que no fui estudiante de la sede de los Naranjos, si no más bien de la sede del Centro de Caracas, solo que me toco asistir a varias clases en esta sede y cuando fui miembro del equipo de futbolito me toco muchas tardes ir a practicar allá...

Bueno, a lo que nos importa...

Les comento que me dio una gran alegría al ver cerca de 300 jovenes avidos de conocimientos, fue una audiencia bastante buena ya que cerca del 90% de los jovenes se mostraron muy interesados en los temas que tocamos.

A mi me toco hablarles sobre WPF. Las personas que esten interesadas en la presentación, pueden descargarla haciendo clic aqui. Si alguno de Uds. esta interesado en los demos, posteen un comentario y por allí nos ponemos de acuerdo

Espero estar de vuelta por allá en poco tiempo.

Acá les dejo algunas fotos que tome:

IMAGE_00030 IMAGE_00033

IMAGE_00032 IMAGE_00031

Cambio y fuera

Oscar

More Posts Next page »