Convertir un IList en un Array
.Net January 28th, 2010
Determinar la versión exacta del SQL Server
SQL January 15th, 2010
Para determinar cuál es la versión exacta de un servidor SQL Server (ya sea 2000, 2005 ó 2008), basta con ejecutar la siguiente consulta:
SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY('productlevel'), SERVERPROPERTY('edition')
En mi caso, la consulta me devuelve algo como esto:
| 9.00.3080.00 | SP2 | Developer Edition |
Para versiones anteriores de SQL Server, podemos utilizar esta otra consulta:
SELECT @@VERSIONVía: Microsoft Support
Tags: SQL Server, SQL Server 2000, SQL Server 2005, SQL Server 2008
Reinstalar Grub luego de instalar Windows
Linux, Ubuntu, Windows December 29th, 2009
Luego de haber instalado Windows 7 hace algunos meses, en un equipo donde tenía tanto el Windows XP como Ubuntu 9.04, quedó inaccesible este último. Esto debido a que el instalador de Windows no reconoce otro sistema operativo que no sea propio de Microsoft (a diferencia de Linux).
Se debe tomar en cuenta NO utilizar el Live CD de Ubuntu 9.10 para restaurar el Grub de las versiones anteriores de Ubuntu. Esto debido a que Ubuntu 9.10 y posteriores utilizan Grub2, que difiere mucho de la primera versión.
Lo primero que se debe hacer es iniciar la máquina con algún Live CD de Linux (como el de Ubuntu, que es el que utilicé en el proceso).
Una vez que está funcionando, abrimos un terminal. Vamos a necesitar los privilegios del root, por lo que lo más práctico sería ir al shell respectivo:
sudo -i
Luego, creamos un punto de montaje para la partición de Ubuntu:
mkdir /mnt/linux
Después, montamos la partición:
mount /dev/sda2 /mnt/linux
Donde sda2 (sd porque es un disco SATA, a por ser el primer disco duro, y 2 por ser el número de la partición) es la partición donde se encuentra Ubuntu. Si no estamos seguros de cual es la partición, podemos usar el programa GParted (visual) o el comando:
fdisk -lUna vez que está montada la partición, podemos corroborar que sea la partición listando los archivos en ella:
ls -la /mnt/linux
ls -la /mnt/linux/boot
Luego de que estamos seguros que es la partición correcta, pasamos a reinstalar el Grub mediante el siguiente comando:
grub-install --root-directory=/mnt/linux /dev/sda
En caso aparezca algún error o advertencia, podemos probar el siguiente comando:
grub-install --root-directory=/mnt/linux /dev/sda --recheck
Donde sda hace referencia al disco (usualmente el primario) cuyo MBR será utilizado para instalar el Grub (ojo que NO incluye el número de partición).
Reiniciamos y deberíamos ver ya el menú de booteo del Grub.
Vía: Ubuntu Documentation
Tags: Grub, Grub2, Ubuntu 9.04, Ubuntu 9.10, Windows 7
Quitar una cadena de texto de muchos registros usando SQL
SQL December 29th, 2009
En una aplicación en la que estoy trabajando, surgió la necesidad de actualizar muchos registros de la base de datos, específicamente, lo que necesitaba era quitar un texto común dentro de un mismo campo para muchos registros.
Para ser más explícito, tenía algo como esto dentro de una tabla en la base de datos:
| id | filepath |
| 1 | files/archivo1 |
| 2 | files/archivo2 |
| 3 | files/archivo3 |
| 4 | archivo4 |
Y necesitaba quitar el texto files/ de los registros que lo tuvieran. La magia nos la dará entonces la función REPLACE dentro de una sentencia UPDATE de SQL:
UPDATE {tabla} SET {campo} = REPLACE({campo}, '{texto original}', '{texto de reemplazo}') WHERE {campo} LIKE '{texto original}%'
En mi caso, la sentencia sería como sigue:
UPDATE files SET filepath = REPLACE(filepath, 'files/', '') WHERE filepath LIKE 'files/%'
Esto hace que primero se filtren los registros cuyo campo filepath comienza por la cadena files/ (nótese el signo de porcentaje solo al final), y luego se reemplace dicho campo por el resultado de la función REPLACE. Esta función toma el valor del campo, busca ahí la cadena files/ y la reemplaza por una cadena vacía (consiguiendo el efecto deseado).
La sentencia WHERE no es completamente necesaria, solo me aseguro que afecte a los registros donde el campo filepath comienza con ese texto y no a los que tengan el texto en otra posición.
Tags: REPLACE, SQL Server, UPDATE
SpeedCrunch, un buen reemplazo para la calculadora de Windows, e incluso de Linux.. y si, de Mac también
Linux, Software, Windows November 6th, 2009
SpeedCrunch es una aplicación de escritorio bastante interesante, ya que es una calculadora muy completa y con características que la hacen muy práctica, por ejemplo:
- Histórico de las últimas operaciones y resultados.
- Hasta 50 decimales (bueno, creo que yo nunca he usado más de 6, como mucho).
- Permite utilizar variables (ilimitadamente, o bueno, hasta que tu computadora aguante).
- No requiere usar mouse (aunque si queremos, lo podemos usar), se puede trabajar cómodamente utilizando solo el teclado.
- Completado de funciones mientras escribes.
- Más.
Además, se puede utilizar en Windows, Linux y Mac OS, lo que la hace aún más práctica.
Tags: Apple Mac OS, Calc, Calculadora, SpeedCrunch
Quitar todos los directorios .svn de una copia de trabajo de Subversion
Linux October 9th, 2009
Hace un rato me vi en la necesidad de borrar todos los directorios .svn (aquellos que coloca Subversion en cada directorio de nuestra copia de trabajo para llevar el control de cambios). El problema era que esta copia de trabajo tiene una estructura de directorios bastante extensa, por lo que hacerlo manualmente no era una opción eficiente. Afortunadamente, desde la linea de comando de Linux podemos hacer lo siguiente:
find . -name ".svn" -exec rm -rf {} \;
Tags: Bash, Subversion
La frase geek del día
Temas diversos September 11th, 2009
I would love to change the world, but they won’t give me the source code.
Tags: Frase del Día, geek
La frase geek del día
Temas diversos September 10th, 2009
1f u c4n r34d th1s u r34lly n33d t0 g37 l41d
Tags: Frase del Día, geek
Vulnerabilidad en Wordpress 2.8
Wordpress August 12th, 2009
Ayer se encontró una vulnerabilidad en Wordpress (hasta la versión 2.8.3) que permite al atacante resetear la contraseña del usuario administrador sin ninguna confirmación o autenticación (generar automáticamente una nueva contraseña y enviarla a la cuenta de correo de dicho usuario). Si bien esto no implica que el atancante obtenga acceso a WP, puede causar se hagan ataques de negación de servicio (DoS) contra el sitio. La gente de Wordpress lanzó ya una nueva versión (2.8.4) corrigiendo el problema, así que a actualizar nuestros sitios de inmediato.
Tags: Seguridad, Vulnerabilidad, Wordpress 2.8

About











