Ver Mensaje Individual
  #4 (permalink)  
Antiguo 13/10/2011, 14:46
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Respuesta: se puede hacer este delete?

Hola de nuevo timoteo666:

Lamentablemente no soy adivino y al no decirnos cuál es el error que te marca pues me resulta imposible poder ayudarte

El delete funciona aun declarando los campos como Primary Key, así es que ese no creo que sea el problema. Es posible que estés ocasionando un problema con alguna Foreign Key, pero como te comento, sólo estoy tratando de adivinar.

Código MySQL:
Ver original
  1. mysql> CREATE TABLE Tabla1(id INT UNSIGNED NOT NULL,
  2.     -> descripcion VARCHAR(10) NOT NULL, PRIMARY KEY (id));
  3. Query OK, 0 rows affected (0.13 sec)
  4.  
  5. mysql> INSERT INTO tabla1 VALUES (1, 'uno'), (2, 'dos'), (3, 'tres');
  6. Query OK, 3 rows affected (0.03 sec)
  7. Records: 3  Duplicates: 0  Warnings: 0
  8.  
  9. mysql> SELECT * FROM tabla1;
  10. +----+-------------+
  11. | id | descripcion |
  12. +----+-------------+
  13. |  1 | uno         |
  14. |  2 | dos         |
  15. |  3 | tres        |
  16. +----+-------------+
  17. 3 rows in set (0.00 sec)
  18.  
  19. mysql> CREATE TABLE Tabla2(id INT UNSIGNED NOT NULL,
  20.     -> descripcion VARCHAR(10) NOT NULL, PRIMARY KEY (id));
  21. Query OK, 0 rows affected (0.07 sec)
  22.  
  23. mysql> INSERT INTO tabla2 VALUES (2, 'dos'), (3, 'tres');
  24. Query OK, 2 rows affected (0.03 sec)
  25. Records: 2  Duplicates: 0  Warnings: 0
  26.  
  27. mysql> SELECT * FROM tabla2;
  28. +----+-------------+
  29. | id | descripcion |
  30. +----+-------------+
  31. |  2 | dos         |
  32. |  3 | tres        |
  33. +----+-------------+
  34. 2 rows in set (0.00 sec)
  35.  
  36. mysql> DELETE T1.* FROM Tabla1 T1, Tabla2 T2 WHERE T1.id = T2.id;
  37. Query OK, 2 rows affected (0.06 sec)
  38.  
  39. mysql> SELECT * FROM tabla1;
  40. +----+-------------+
  41. | id | descripcion |
  42. +----+-------------+
  43. |  1 | uno         |
  44. +----+-------------+
  45. 1 row in set (0.00 sec)

Es conveniente que cuando alguna consulta de marque error PUBLIQUES TAMBIÉN EL ERROR QUE TE ESTÁ MARCANDO. También sería conveniente que nos dijeras pusieras el SQL con el que creaste tus tablas, para ver si por ahí va el problema.

Saludos.
Leo.