Lilypie Primer PicLilypie Primer Ticker
Mostrando las entradas con la etiqueta snippets. Mostrar todas las entradas
Mostrando las entradas con la etiqueta snippets. Mostrar todas las entradas

lunes, 18 de febrero de 2008

Si existe: actualizar; si no: insertar

Comparto con ustedes un tip sobre BD que encontré aqui

A menudo necesitamos actualizar un registro existente en una tabla o insertarlo en caso de no existir. La forma mas simple de hacerlo es:

IF EXISTS(SELECT * FROM MiTabla WHERE MiLlave = 10) THEN
UPDATE MiTabla SET MiCampo = 100 WHERE MiLlave = 10
ELSE
INSERT INTO MiTabla (MiLlave, MiCampo) VALUES (10,100)

Este script funciona, sin embargo no es la forma más óptima de realizar esta operación, pues el motor de la BD realiza dos búsquedas en la tabla. Una para el SELECT y otra para el Update.

Una mejor forma de hacer esta operación es:

UPDATE MiTabla SET MiCampo = 100 WHERE MiLlave = 10
IF @@ROWCOUNT = 0 THEN
INSERT INTO MiTabla (MiLlave, MiCampo) VALUES (10,100)

Asi le ahorramos un poco de trabajo a nuestro servidor.

Saludos

miércoles, 20 de junio de 2007

La Clase OperatingSystem

En uno de los foros en que participo, un colega preguntaba cómo se puede obtener la versión del Sistema Operativo que estamos ejecutando.

Se puede obtener una referencia a la versión del SO que estamos ejecutando con el siguiente código:

OperatingSystem os = Environment.OSVersion;

Entonces, a través de las propiedades de la clase OperatingSystem podemos acceder a la siguiente información:

os.Platform: La plataforma. Ej. Win32, Win32NT,....

os.VersionString: Una cadena con la información completa de nuestro SO
Ej: "Microsoft Windows NT 5.2.3790 Service Pack 2"

os.Version: La versión del SO. Las propiedades que tiene son:
Major, MajorRevision, Minor, MinorRevision y Revision

os.Version.ToString() nos devuelve una cadena de tipo "5.2.3790"

os.ServicePack: Una cadena que muestra la versión del Service Pack instalado.
Ej: "Service Pack 2"

Seguramente esta información le será útil a más de uno, saludos

martes, 19 de junio de 2007

Averiguar la ruta en que se ejecuta el programa

Hola a todos. Aun sigo sin poder conseguir mucho tiempo libre, pero aprovecho ahora para iniciar una serie de posts en que compartiré con ustedes varios snippets muy útiles.

Empiezo la serie con un snippet que permite obtener la ruta (path) desde la que se ejecuta el ejecutable de nuestra aplicación.

string appPath = Application.ExecutablePath;

o también

string appPath = System.Reflection.Assembly.GetExecutingAssembly().Location
Saludos