Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]co w tym zapytaniu jest nie tak? (DoctrineMigrationBundle wygenerował zapytanie które zwraca błedy INTEGRITY CONSTRAINT)
porzeczki
post 10.03.2018, 20:17:43
Post #1





Grupa: Zarejestrowani
Postów: 144
Pomógł: 0
Dołączył: 15.09.2016
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Proszę poradzić co jest nie tak. DoctrineMigrationBundle wygenerował zapytanie które zwraca błędy INTEGRITY CONSTRAINT. Poniżej wklejam wyniki komendy i eksport istniejącej (kłopotliwej) tabeli

doctrine:migration:diff (fragment)
  1. public function up(Schema $schema)
  2. {
  3. $this->addSql('CREATE UNIQUE INDEX UNIQ_DFCCB96DEDE56D28 ON shop_division_position_link (division_position_link_did)');
  4.  
  5. }


doctrine:migration:migrate
  1. Migrating [32mup[39m to [33m20180310185535[39m from [33m0[39m
  2.  
  3. [32m++[39m migrating [33m20180310184729[39m
  4.  
  5. [33m->[39m CREATE UNIQUE INDEX UNIQ_DFCCB96DEDE56D28 ON shop_division_position_link (division_position_link_did)
  6. [37;41mMigration 20180310184729 failed during Execution. Error An exception occurred while executing 'CREATE UNIQUE INDEX UNIQ_DFCCB96DEDE56D28 ON shop_division_position_link (division_position_link_did)':
  7.  
  8. SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '17' for key 'UNIQ_DFCCB96DEDE56D28'[39;49m
  9.  
  10. [37;41m [39;49m
  11. [37;41m [Doctrine\DBAL\Exception\UniqueConstraintViolationException] [39;49m
  12. [37;41m An exception occurred while executing 'CREATE UNIQUE INDEX UNIQ_DFCCB96DEDE56D28 ON shop_division_position_link (division_position_link_did)': [39;49m
  13. [37;41m [39;49m
  14. [37;41m SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '17' for key 'UNIQ_DFCCB96DEDE56D28' [39;49m
  15. [37;41m [39;49m
  16.  
  17. [37;41m [39;49m
  18. [37;41m [Doctrine\DBAL\Driver\PDOException] [39;49m
  19. [37;41m SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '17' for key 'UNIQ_DFCCB96DEDE56D28' [39;49m
  20. [37;41m [39;49m
  21.  
  22. [37;41m [39;49m
  23. [37;41m [PDOException] [39;49m
  24. [37;41m SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '17' for key 'UNIQ_DFCCB96DEDE56D28' [39;49m
  25. [37;41m [39;49m


export sql istniejącej bazy (tylko tabela kłopotliwa)
  1. CREATE TABLE `shop_division_position_link` (
  2. `division_position_link_pid` int(10) UNSIGNED NOT NULL,
  3. `division_position_link_did` int(10) UNSIGNED NOT NULL,
  4. `id` int(11) NOT NULL
  5. ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
  6.  
  7. ALTER TABLE `shop_division_position_link`
  8. ADD PRIMARY KEY (`id`),
  9. ADD UNIQUE KEY `UNIQ_DFCCB96DF6CA6684` (`division_position_link_pid`);
  10.  
  11. ALTER TABLE `shop_division_position_link`
  12. MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;


Ten post edytował porzeczki 10.03.2018, 20:19:38
Go to the top of the page
+Quote Post
Pyton_000
post 10.03.2018, 20:48:09
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Przecież masz wyjaśniony błąd.

Masz zduplikowany wiersz z ID = 17 w tabeli a próbujesz nakładać UNIQUE.

Więc masz problem z danymi a nie z wygenerowanym zapytaniem.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.04.2024 - 22:47