#1075 - Incorrect table definition

Pagina: 1
Acties:
  • 147 views sinds 30-01-2008
  • Reageer

  • xares
  • Registratie: Januari 2007
  • Laatst online: 22-01 20:21
Ik zit met het volgende probleem:

Ik heb een tabel hierin heb ik ID en artikelnummer
van artikelnummer wil ik een auto_increment veld van maken.

Dan treed het volgende probleem op in phpmyadmin;
#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

Nu heb ik gelezen op internet dat je een key moet aanmaken.
Die heb ik erbij gezet, nogmaals geprobeert zelfde foutmelding.

Heb InnoDB ook al geprobeerd

Ik voer hem als volgt in:



CREATE TABLE `producten` (
PRIMARY KEY (`artikelnummer`),
UNIQUE KEY `id` (`id`),
UNIQUE KEY `artikelnummer` (`artikelnummer`),
`id` int(10) unsigned NOT NULL auto_increment,
`cat` int(11) NOT NULL default '0',
`bestelcode` varchar(50) NOT NULL default '',
`naam` varchar(200) NOT NULL default '',
`omschrijving` text NOT NULL,
`specs` text NOT NULL,
`prijs` varchar(255) NOT NULL default '',
`prijs_oud` varchar(255) NOT NULL default '',
`tonen` int(1) NOT NULL default '1',
`artikelnummer` int(20) NOT NULL auto_increment,
`gekoppeld` text NOT NULL,
`merk` bigint(20) NOT NULL default '0',
`fotos` text NOT NULL,
`extra_opties` text NOT NULL,
`voorraad` bigint(20) NOT NULL default '1',
`model` varchar(255) NOT NULL default '',
`op_voorraad` enum('1','0') NOT NULL default '1',
`aanbieding` enum('1','0') NOT NULL default '1',
`gewicht` varchar(255) NOT NULL default '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1



Wat heb ik al geprobeerd?

- InnoDB
-Key toe te voegen
-Invoegen met alleen ID dit werkt toen met sleuteltje in phpmyadmin geprobeerd en toen naar AUTO_INCREMENT gewijzigd (zelfde foutmelding)
-Op internet gezocht

Al vast bedankt voor de moeite! :)

  • Corona Extra
  • Registratie: September 2003
  • Laatst online: 22-01 11:33
Misschien een beetje kort door de bocht antwoord, maar als ik die foutmelding zo zie met daarin de melding dat er maar één auto column kan zijn terwijl je er twee probeert te creeeren.

het velden ID en Artikelnummer probeer je beide auto increment te maken terwijl (volgens de foutmelding) maar 1 veld auto increment mag zijn.

[edit]
Quote van dev.mysql.com:

There can be only one AUTO_INCREMENT column per table, it must be indexed, and it cannot have a DEFAULT value. An AUTO_INCREMENT column works properly only if it contains only positive values. Inserting a negative number is regarded as inserting a very large positive number. This is done to avoid precision problems when numbers “wrap” over from positive to negative and also to ensure that you do not accidentally get an AUTO_INCREMENT column that contains 0.
[/edit]

[ Voor 48% gewijzigd door Corona Extra op 27-12-2007 01:08 ]


  • Face_-_LeSS
  • Registratie: September 2004
  • Niet online
Volgens mij is die foutmelding vrij duidelijk......

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Waarom wil jij naast id ook artnr auto increment maken? Over het algemeen maak ik alleen onzichtbare velden ( bijv id ) auto increment omdat mensen zichtbare velden nog wel eens willen hernummeren etc.

Wil je deze toch uniek maken dan kan je een unique constraint eroverheen gooien en je auto-increment in je app regelen, dan is hij in je dbase niet 100% vastgelegd en heb je nog speelruimte.

  • xares
  • Registratie: Januari 2007
  • Laatst online: 22-01 20:21
Oke, het is duidelijk bedankt allen!

[ Voor 30% gewijzigd door xares op 27-12-2007 01:13 ]