<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>En Español &#187; bases de datos</title>
	<atom:link href="http://www.enespanol.com.ar/categorias/software/bases-de-datos/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.enespanol.com.ar</link>
	<description>Tecnología con Acento</description>
	<lastBuildDate>Fri, 15 Jan 2010 17:33:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Ruby on Rails en Debian/Ubuntu en 3 pasos</title>
		<link>http://www.enespanol.com.ar/2007/11/15/ruby-on-rails-en-debianubuntu-en-3-pasos/</link>
		<comments>http://www.enespanol.com.ar/2007/11/15/ruby-on-rails-en-debianubuntu-en-3-pasos/#comments</comments>
		<pubDate>Thu, 15 Nov 2007 05:39:52 +0000</pubDate>
		<dc:creator>Matías</dc:creator>
				<category><![CDATA[bases de datos]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tutoriales]]></category>
		<category><![CDATA[aptitude]]></category>
		<category><![CDATA[console]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[RoR]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://enespanol.com.ar/2007/11/15/ruby-on-rails-en-debianubuntu-en-3-pasos/</guid>
		<description><![CDATA[Un grupo de personas me pidieron ayuda para instalar Ruby on Rails. Mi solución son 3 pasos:

(sólo para ubunteros) Asegúrense de tener los repositorios de multiverse y universe
(sólo para debianeros) Asegúrense de tener instalado el comando sudo o ejecuten los comandos como root
sudo aptitude install ruby
sudo aptitude install rails

Aunque parezca increíble eso es todo. Así [...]]]></description>
			<content:encoded><![CDATA[<p>Un grupo de personas me pidieron ayuda para instalar <a href="http://www.rubyonrails.org/">Ruby on Rails</a>. Mi solución son 3 pasos:</p>
<ol>
<li>(sólo para ubunteros) Asegúrense de <a href="http://www.guia-ubuntu.org/index.php?title=Activar_universe_y_multiverse">tener los repositorios de multiverse y universe</a></li>
<li>(sólo para debianeros) Asegúrense de tener instalado el comando sudo o ejecuten los comandos como root</li>
<li><code>sudo aptitude install ruby</code></li>
<li><code>sudo aptitude install rails</code></li>
</ol>
<p>Aunque parezca increíble eso es todo. Así de fácil es instalar todo el lenguaje y el framework y queda todo armadito. Si queremos además que Ruby se pegue con MySQL, basta con una línea más:</p>
<p><code>sudo aptitude install librdb-mysql-ruby</code></p>
<p>¿Quién me puede decir que eso no es fácil?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.enespanol.com.ar/2007/11/15/ruby-on-rails-en-debianubuntu-en-3-pasos/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>10 pasos para cambiar de hosting</title>
		<link>http://www.enespanol.com.ar/2007/09/08/10-pasos-para-cambiar-de-hosting/</link>
		<comments>http://www.enespanol.com.ar/2007/09/08/10-pasos-para-cambiar-de-hosting/#comments</comments>
		<pubDate>Sat, 08 Sep 2007 22:48:31 +0000</pubDate>
		<dc:creator>Matías</dc:creator>
				<category><![CDATA[bases de datos]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tutoriales]]></category>

		<guid isPermaLink="false">http://www.enespanol.com.ar/2007/09/08/10-pasos-para-cambiar-de-hosting/</guid>
		<description><![CDATA[¿Cuántas veces escuchamos gente quejarse de sus proveedores de Hosting? Pero aún cuando no se quejen, hay veces que uno tiene que mudarse de proveedor&#8230; y eso implican muchos problemas a veces.
Por suerte, vía LifeHacker, encuentro un artículo que indica cómo mudar de hosting en 6 pasos muy simples. Creo que se olvidó de un [...]]]></description>
			<content:encoded><![CDATA[<p>¿Cuántas veces escuchamos gente quejarse de sus proveedores de Hosting? Pero aún cuando no se quejen, hay veces que uno tiene que mudarse de proveedor&#8230; y eso implican muchos problemas a veces.</p>
<p>Por suerte, <a href="http://lifehacker.com/software/web-hosting/easily-switch-from-one-web-host-to-another-297787.php">vía LifeHacker</a>, encuentro un artículo que indica <a href="http://essentialkeystrokes.com/6-easy-steps-to-making-a-web-hosting-switch">cómo mudar de hosting en 6 pasos muy simples</a>. Creo que se olvidó de un par de pasos importantes (o los resumió demasiado) así que acá está mi versión:</p>
<ol>
<li>Respalda todos los archivos de tu servidor actual a tu disco duro</li>
<li>Haz un backup a un archivo en tu disco duro de tu base de datos</li>
<li>Transfiere todo el contenido de los archivos a tu nuevo servidor</li>
<li>Importa el respaldo de tu base de datos a una nueva base de datos en tu nuevo proveedor</li>
<li>Crea las cuentas de mails basándote en tu configuración existente</li>
<li>De ser posible pruébalo</li>
<li>Cambia los registros del servidor de nombres en la configuración de donde sea que hayas registrado el dominio</li>
<li>Espera de 1 hora a 2 días para que el cambio se propague</li>
<li>A penas se cambie, prueba exhaustivamente el sitio&#8230; probablemente sea bueno hacerlo durante un par de días</li>
<li>Borra los archivos y la base de datos de tu proveedor anterior y cancela tu plan</li>
</ol>
<p>Obviamente es mucho más fácil leer los pasos que hacerlos. Los problemas pueden aparecer por todos lados, éstos son algunos que me pasaron o que sería bueno tener en cuenta:</p>
<ul>
<li>Muchos proveedores le agregan prefijos que no puedes cambiar a los nombres de las bases de datos, seguramente vas a tener que modificar algunas configuraciones para adaptarse a ese cambio</li>
<li>La codificación del texto en la base de datos es importante, si no es el mismo en todos lados (base de datos original, tu disco duro y base de datos final) pueden aparecer caracteres raros donde antes había acentos u otros caracteres no estándares</li>
<li>No es un buen momento para hacer eso que querías hacer con tu sitio web pero venías postergando, espera una semana o dos hasta que te asegures que todo anda bien</li>
<li>Trata de que el cambio de servidor ocurra cuando tengas tiempo para dedicarle, vas a necesitar mucho tiempo para revisar todo y/o solucionar problemas&#8230; y tienes que acostumbrarte a la interfaz de tu nuevo proveedor</li>
<li>Las cuentas de mail seguramente son lo más crítico, revisa aliases, forwardeos para evitar que no se pierda ningún e-mail</li>
<li>Establece alguna forma de que tus usuarios te informen sobre cosas que no se ven bien&#8230; o juega a hacer todo sin que se den cuenta <img src='http://www.enespanol.com.ar/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </li>
</ul>
<p>Estoy seguro que mil cosas más pueden pasar. Aquellos que tienen más experiencia en este tipo de ejemplos ¿de qué me olvidé?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.enespanol.com.ar/2007/09/08/10-pasos-para-cambiar-de-hosting/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Guía rápida de MySQL</title>
		<link>http://www.enespanol.com.ar/2006/05/23/guia-rapida-de-mysql/</link>
		<comments>http://www.enespanol.com.ar/2006/05/23/guia-rapida-de-mysql/#comments</comments>
		<pubDate>Tue, 23 May 2006 04:06:54 +0000</pubDate>
		<dc:creator>Matías</dc:creator>
				<category><![CDATA[bases de datos]]></category>
		<category><![CDATA[tutoriales]]></category>

		<guid isPermaLink="false">http://www.enespanol.com.ar/2006/05/23/guia-rapida-de-mysql/</guid>
		<description><![CDATA[Después de una larga ausencia por problemas con el estudio y el trabajo, vuelvo a las andadas con algo útil. Una de las cosas que tengo que hacer en mi trabajo ahora es trabajar con unas de bases de datos MySQL. Como siempre me dediqué a la programación de idioteces, jamás había visto lo que [...]]]></description>
			<content:encoded><![CDATA[<p>Después de una larga ausencia por problemas con el estudio y el trabajo, vuelvo a las andadas con algo útil. Una de las cosas que tengo que hacer en mi trabajo ahora es <strong>trabajar con unas de bases de datos MySQL</strong>. Como siempre me dediqué a la programación de idioteces, jamás había visto lo que se podía hacer con una base de datos. Podrán imaginarse cómo se me complicó.</p>
<p>Al momento, lo mejor que encontré para ayudarme con eso fue <a href="http://www.navicat.com/">Navicat</a>: una interfase gráfica para manejar la base de datos, hacer consultas y demás. Tiene versión para Windows, MacOS (binario universal) y Linux; pero su uso sin costo está limitado a 30 días. Buscando en internet, la mejor opción gratuita que encontré fue <a href="http://http://www.webyog.com/sqlyog/index_sqlyogfree.php">SqlYog</a> que sólo molesta con una ventanita al abrir y/o cerrar el programa. Pero además tiene una gran desventaja: no tiene el constructor de consultas. Lo que significa que para sacar datos de la base de datos necesitás tener idea de MySQL. <strong>Se aceptan sugerencias sobre otras interfases de este estilo.</strong></p>
<p>Evidentemente, algo aprendí leyendo lo que hacía el Navicat cuando yo construía consultas. La <a href="http://dev.mysql.com/doc/refman/5.1/en/index.html">documentación oficial de MySQL</a> también fue de gran ayuda (especialmente el capítulo 13); pero de todas formas es complicada de leer. Por eso, acá les traduzco una referencia muy completa que me fue de gran ayuda para aprender y recordar la sintáxis de MySQL.</p>
<p><span id="more-35"></span></p>
<h3>Notas de traducción</h3>
<ul>
<li>La traducción fue realizada con <strong>la autorización explícita y por escrito (en un e-mail) de su autor</strong>: <a href="http://www.nparikh.org/">Neal Parikh</a></li>
<li>En los ejemplos dados, <code>mysql&#038;gt:</code> representa la línea de comandos del cliente por defecto de MySQL, pero ésta debería ser válida para cualquier cliente, programa o interfase capaz de interactuar con una base de datos MySQL</li>
<li>No he verificado del todo; pero estoy casi seguro que las palabras en mayúsculas son todas palabras reservadas y no deben ser tipeadas literalmente (en mayúsculas o minúsculas)</li>
<li><strong>El artículo original</strong>: <a href="http://www.nparikh.org/unix/mysql.php">MySQL Cheat Sheet</a></li>
</ul>
<h3>La traducción</h3>
<blockquote>
<h4>Seleccionar una base de datos:</h4>
<p><code>mysql> USE basededatos;</code></p>
<h4>Mostrar las bases de datos existentes:</h4>
<p><code>mysql> SHOW DATABASES;</code></p>
<h4>Mostrar las tablas de la base de datos seleccionada:</h4>
<p><code>mysql> SHOW TABLES;</code></p>
<h4>Describir el formato de una tabla:</h4>
<p><code>mysql> DESCRIBE tabla;</code></p>
<h4>Crear una base de datos:</h4>
<p><code>mysql> CREATE DATABASE nombre_basededatos;</code></p>
<h4>Crear una tabla:</h4>
<p><code>mysql> CREATE TABLE nombre_tabla (nombre_campo1 TIPO(TAMAÑO), nombre_campo2 TIPO(TAMAÑO), ...);</code></p>
<p>Por ejemplo:</p>
<p><code>mysql> CREATE TABLE mascota (nombre VARCHAR(20), sexo CHAR(1), nacimiento DATE);</code></p>
<h4>Cargar un archivo separado por tabs a la base de datos:</h4>
<p><code>mysql> LOAD DATA LOCAL INFILE "archivo.txt" INTO TABLE nombre_tabla;</code></p>
<p>(Usar \n para representar un valor NULL)</p>
<h4>Agregar una fila por vez</h4>
<p><code>mysql> INSERT INTO nombre_tabla VALUES ('Nombre', 'Dueño', '2006-05-23');</code></p>
<p>(Usar NULL para los valores NULL)</p>
<h4>Obtener ifnormación:</h4>
<p><code>mysql> SELECT columna1, columna2, ..., columna_n FROM tablas WHERE condiciones;</code></p>
<p><strong>Toda la tabla:</strong> <code>SELECT * FROM tabla;</code><br />
<strong>Algunos valores:</strong> <code>SELECT * FROM tabla WHERE nombre_columna = "valor";</code><br />
<strong>Varios filtros:</strong> <code>SELECT * FROM tabla WHERE columna1 = "valor1" AND columna2 = "valor2";</code></p>
<h4>Modificar un conjunto de registros (que concuerden con un filtro)</h4>
<p><code>mysql> UPDATE tabla SET nombre_columna = "nuevo_valor" WHERE nombre_columna = "valor_de_filtro";</code></p>
<h4>Seleccionando sólo una columna en especial:</h4>
<p><code>mysql> SELECT nombre_columna FROM tabla;</code></p>
<h4>Obteniendo datos únicos/distintos/sin repetir:</h4>
<p><code>mysql> SELECT DISTINCT nombre_columna FROM tabla;</code></p>
<h4>Ordenar los datos</h4>
<p><code>mysql> SELECT columna1, columna2, .... FROM tabla ORDER BY columna_n;</code></p>
<p><strong>Orden inverso:</strong> <code>SELECT columna1, columna2, .... FROM tabla ORDER BY columna_n DESC;</code></p>
<h4>Cálculo de fechas</h4>
<p><code>mysql> SELECT CURRENT_DATE, (YEAR(CURRENT_DATE)-YEAR(columna_de_fecha)) AS diferencia_de_fechas [FROM tabla];</code></p>
<p><code>MONTH(una_fecha)</code> extrae el mes de la fecha especificada, <code>DAYOFMONTH(fecha)</code> el día.</p>
<h4>Búsqueda de patrones (expresiones):</h4>
<p><code>mysql> SELECT * FROM tabla WHERE columna LIKE 'algo%';</code></p>
<p>% es el caracter de comodín que significa cualquier cantidad de caracteres</p>
<p><code>mysql> SELECT * FROM tabla WHERE columna LIKE '_____';</code></p>
<p>_ es el caracter de comodín que significa cualquier caracter (sólo 1).</p>
<h4>Búsqueda avanzada de expresiones regulares:</h4>
<p><code>mysql> SELECT * FROM tabla WHERE columna RLIKE '^b$';</code></p>
<ul>
<li>. para un caracter</li>
<li>[...] para un conjunto de caracteres</li>
<li>* para 0 o más caracteres</li>
<li>^ para el comienzo</li>
<li>{n} para n repeticiones</li>
<li>$ para el final</li>
</ul>
<p>Es válido tanto para RLIKE como REGEXP. Sin embargo, para forzar la diferenciación de mayúsculas de minúsculas se recomendaría usar &#8220;REGEXP BINARY&#8221;.</p>
<h4>Contando filas:</h4>
<p><code>mysql> SELECT COUNT(*) FROM tabla;</code></p>
<h4>Agrupar las cuentas</h4>
<p><code>mysql> SELECT columna, COUNT(*) FROM tabla GROUP BY columna;</code></p>
<p>GROUP BY agrupa todos los registros de cada valor distinto de la columna especificada</p>
<h4>Filtrando varias columnas:</h4>
<p><code>mysql> SELECT tabla1.columna1, columna2 FROM tabla1, tabla2 WHERE tabla1.columna1 = tabla2.columna_n;</code></p>
<p>Se puede comparar una tabla consigo misma utilizando &#8216;AS&#8217; para darle un nuevo nombre a una columna.</p>
<h4>Seleccionar la base de datos actual:</h4>
<p><code>mysql> SELECT DATABASE();</code></p>
<h4>Calcular el máximo</h4>
<p><code>mysql> SELECT MAX(nombre_columna) AS nombre_nueva_columnal FROM tabla;</code></p>
<h4>Columna auto-incrementada</h4>
<p><code>mysql> CREATE TABLE tabla (numero INT NOT NULL AUTO_INCREMENT, nombre CHAR(10) NOT NULL);<br />
mysql> INSERT INTO tabla (nombre) VALUES ("tomas"),("pedro"),("juan");</code></p>
<h4>Agregando una columna a una tabla ya existente:</h4>
<p><code>mysql> ALTER TABLE tabla ADD COLUMN [sintaxis para una nueva columna] AFTER nombre_columna;</code></p>
<h4>Borrando una columna:</h4>
<p><code>mysql> ALTER TABLE tabla DROP COLUMN nombre_columna;</code></p>
<h4>Haciendo una copia de seguridad con mysqldump:</h4>
<p><code># mysqldump --opt -u usario -p base_de_datos > respaldo.sql</code></p>
<p>Si se quiere hacer el respaldo de muchas bases de datos, hay que utilizar:</p>
<p><code># mysqldump --opt --all-databases > respaldo_todo.sql</code>
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.enespanol.com.ar/2006/05/23/guia-rapida-de-mysql/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
