sql >> Database >  >> RDS >> Mysql

MySQL dubbele invoerfout, ook al is er geen dubbele invoer

Uw code en schema zijn in orde. U probeert waarschijnlijk de vorige versie van de tabel.

http://sqlfiddle.com/#!2/9dc64/1/0

Je tafel heeft zelfs geen UNIEK, dus die fout is onmogelijk op die tafel.

Maak een back-up van gegevens uit die tabel, laat ze vallen en maak ze opnieuw.

Misschien heb je geprobeerd die CREATE TABLE IF NOT EXIST . Het is niet gemaakt, je hebt een oude versie, maar er is geen fout opgetreden vanwege IF NOT EXIST .

U kunt SQL als volgt uitvoeren om de huidige tabelstructuur te zien:

DESCRIBE my_table;

Bewerken - later toegevoegd:

Probeer dit uit te voeren:

DROP TABLE `my_table`; --make backup - it deletes table

CREATE TABLE `my_table` (
  `number` int(11) NOT NULL,
  `name` varchar(50) NOT NULL,
  `money` int(11) NOT NULL,
  PRIMARY KEY (`number`,`name`),
  UNIQUE (`number`, `name`) --added unique on 2 rows
) ENGINE=MyISAM;


  1. hoe krijg ik een gedetailleerd foutenrapport wanneer een php-mysql-script mislukt?

  2. Hoe de volgorde van invoeging in SQL Server te behouden?

  3. 'vrienden van vrienden' SQL-query

  4. MyBatis Batch invoegen/update voor Oracle