Forzar vaciar tabla (truncate table) que tiene claves externas

agosto 20, 2014

Cuando en MySql intentamos vaciar una tabla (truncate table) que contiene claves externas a otras tablas de la base de datos, podemos encontrarnos con un error muy parecido a este: mysql> TRUNCATE TABLE `YourTableName`;   ERROR 1701 (42000): Cannot truncate a table referenced in a foreign key constraint (`YourTableName`, CONSTRAINT `FK_2C0BB1B8D48E193` FOREIGN KEY (`external_id`) REFERENCES `OtherTable` (`id`)) Para solucionarlo, podemos desactivar momentaneamente la comprobación de las claves externas, vaciar las ...

Bases de datos SQLite en iOS: Librería FMDB

junio 5, 2013

Muchas aplicaciones para iOS necesitan guardar datos según vamos haciendo uso de ella o ya cuentan con una base de datos inicial a la que se irán haciendo consultas. Existen varias formas de guardar información en iOS: CoreData, NSUserDefaults, bases de datos SQLite, etc. Si utilizamos bases de datos SQLite, consultar, insertar, actualizar o borrar datos se puede convertir en una tarea bastante engorrosa, “arcaica” y propensa a errores. Para ...

Relaciones en Symfony 1.4 con Doctrine

junio 17, 2011

Una de las dificultades que podemos encontrar al utilizar el ORM Doctrine (por ejemplo, en Symfony) es configurar las relaciones entre tablas en el schema.yml que define nuestra base de datos. A modo de ejemplo, voy a mostrar los tres tipos de relaciones que podemos querer configurar: Relaciones uno a uno Un caso típico para este tipo de relación es el de un usuario y su perfil. Un usuario solamente ...

Transacciones MySQL con Doctrine y Symfony

noviembre 22, 2010

Lo primero de todo, ¿qué es una transacción MySQL? Una transacción en MySQL es la combinación de una o más consultas SQL que juntas forman una unidad de trabajo. El ejemplo clásico es el movimiento de dinero en un banco entre dos cuentas bancarias. Si la persona A quiere hacer una transferencia bancaria a la persona B, habrá dos consultas: 1) la que descuenta el dinero a la persona A ...