scusa piero credo che ctiamo imbrogliando.
Allora faccio un passo indietro. Io vorrei creare un database in cui:
la prima colonna si incrementerà automaticamente ad ogni nuovo record inserito
la seconda e terza colonna dovranno essere obbligatorie per cui è esplicito che dovranno contenere nelle proprietà NOT NULL e i lori valori nei record dovranno essere unici.
Quindi ho pensato di creare il db in questo modo:
CREATE TABLE `cliente` (
`idcli` int(3) unsigned NOT NULL auto_increment,
`codcli` int(5) NOT NULL default '0',
`ragsoccli` varchar(20) NOT NULL default '',
PRIMARY KEY (`idcli`),
UNIQUE KEY `codcli` (`codcli`,`ragsoccli`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
il problema nasce però quando io inserisco un valore duplice e il db lo accetta (non dovrebbe visto chè la chiave è UNICA) e quando io non inserisco nulla in uno dei due campi (visto che ho il NOT NULL)
Invece dalle prove fatto non è così in quanto posso inserire valori uguali e mancanti
INSERT INTO `cliente` (`idcli`, `codcli`, `ragsoccli`) VALUES
(1, 0, ''),
(2, 1, ''),
(3, 0, '1'),
(4, 0, '2');
Spero di essere stato più chiaro ora, grazie
PS scusa per la foto ho sbagliato a copiare il link