auto_increment
CREATE TABLE `gbook` (
`id` TINYINT( 5 ) NOT NULL AUTO_INCREMENT ,
`titel` VARCHAR( 100 ) NOT NULL ,
`poster` VARCHAR( 100 ) NOT NULL ,
`email` VARCHAR( 100 ) NOT NULL ,
`post` VARCHAR( 255 ) NOT NULL ,
PRIMARY KEY ( `id` )
) TYPE = MYISAM ;
maar ik ontbreek een regel namelijk :
AUTO-INCREMENT= 1
weet iemand waar ik deze in mijn tabel moet gaan zoeken of instellen?
de code moet er zo uitzien:
CREATE TABLE `gbook` (
`id` TINYINT( 5 ) NOT NULL AUTO_INCREMENT ,
`titel` VARCHAR( 100 ) NOT NULL ,
`poster` VARCHAR( 100 ) NOT NULL ,
`email` VARCHAR( 100 ) NOT NULL ,
`post` VARCHAR( 255 ) NOT NULL ,
PRIMARY KEY ( `id` )
) TYPE = MYISAM ; AUTO_INCREMENT=1
hartelijk dank
(stond op phpfreakz);p
als ik het goed begrijp moet ik dan niets meer aanpassen, en is mijn tabel exact gemaakt?
Maar als ik nu naar :
http://www.scoutsdonk.be/gbook/config.php ga,
dan geeft hij deze fout:
"Connectie met Database mislukt"
Ik heb thans de chmod 777 gedaan?
Weet iemand raad?
met dank
dan heb je de gegevens niet goed ingevult.
Waar bedoel je?
Bij mysql_connect(); moet de host gebruikersnaam en het wachtwoord kloppen.
Of geen bestaande database opgegeven bij mysql_select_db(); aangezien de connectie met de database mislukt is en niet met de databaseserver. Maar goed :)
TINYINT( 5 ) is ook fou, voor auto_increment moet je nooit tinyint gebruiken want tinyint gaat maar tot 127. Neem gewoon een INT.
Je hoeft idd niet op te geven waar auto_increment gaat beginnen want als je een nieuwe tabel maakt begint hij atlijd standaard bij 1.
Verder hebben de NOT NULL's geen effect in mysql, net als de lengtes die je bij VARCAHR opgeeft. Als je in deze tabel een email adres van 150 tekens invoert komen allen de eerste 100 tekens in de database, en de rest gaat verloren. MySQL waarschuwt je niet als dfit gebeurt.
Bij varchar moet een aantal tekens opgegeven worden. En trouwens, ooit een bestaand mailadres van meer dan 100 tekens gezien?