Volgende tabel maak ik aan:

CREATE TABLE `members` (
`id` int(11) NOT NULL auto_increment,
`first_name` varchar(30) NOT NULL,
`last_name` varchar(50) NOT NULL,
`gender` varchar(1) NOT NULL,
`country` varchar(20) NOT NULL,
`email` varchar(50) NOT NULL,
`show_email` varchar(1) NOT NULL,
`hobbys` varchar(500) NOT NULL,
`b_day` int(11) NOT NULL,
`b_month` int(11) NOT NULL,
`b_year` int(11) NOT NULL,
`extra` varchar(250) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

en na het invoegen krijg ik deze fout:
Fout
SQL-query:

INSERT INTO `members` ( `id` , `first_name` , `last_name` , `gender` , `country` , `email` , `show_email` , `hobbys` , `b_day` , `b_month` , `b_year` , `extra` )
VALUES (

NULL , 'ikke', Array(
'achterikke'
), 'm', 'be', '[email protected]', Array(
'y'
), 'niksen', '17', '1', '1968', 'niks'
)

MySQL retourneerde:

#1305 - FUNCTION birthday.Array does not exist


Mijn vraag is: hoe komen die array's daarin?? :(
Als ik je CREATE query uitvoer in phpMyAdmin creëert hij keurig een tabel, zonder foutmeldingen.
K was misschien een beetje onduidelijk. Het aanmaken van die tabel lukt mij ook. Maar als ik daar gegevens wil instoppen dan loopt het mis.
En k heb geen idee wat ik fout doe.
Je insert-query hoort er zo uit te zien:
<?php
INSERT INTO members
( first_name , last_name , gender , country , email , show_email , hobbys , b_day , b_month , b_year , extra )
VALUES
( 'ikke', 'achterikke', 'm', 'be', '[email protected]', 'y', 'niksen', 17, 1, 1968, 'niks')
?>

• een autoincrement veld niet met NULL willen vullen maar gewoon weglaten. Doet MySQL voor je
• je dag-, maand-, en jaarvelden zijn denk ik van het type INT. Als het VARCHAR's zijn moeten de quotes er weer omheen. Nog veel beter is om de hele geboortedatum in een DATE veld te zetten.

Reageren