Azidops Skrevet 7. desember 2009 Del Skrevet 7. desember 2009 (endret) Heisann. Har følgende tabell: CREATE TABLE `booking_firm` ( `id_firm` int(4) NOT NULL auto_increment, `company_name` varchar(100) NOT NULL, `contact` varchar(60) NOT NULL, `phone` bigint(12) default NULL, `cell` bigint(12) default NULL, `address` varchar(30) default NULL, `zip` varchar(10) default NULL, `city` varchar(30) default NULL, `email` varchar(50) default NULL, `active` varchar(3) NOT NULL, PRIMARY KEY (`id_firm`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=22; Skal sette inn følgende spørring men får feilmelding: INSERT INTO `booking_firm` ( `id_firm` , `company_name` , `contact` , `phone` , `cell` , `address` , `zip` , `city` , `email` , `active` ) VALUES (NULL , 'Rema 1000', 'Rema-Reitan', 72727272, , 'Trondheimsveien 23', 7021, '', '', 'yes'); Feilmelding: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' 'Trondheimsveien 23', 7021, '', '', 'yes')' at line 1 Er det ikke mulig å putte inn tomme verdier i en BIGINT? Er jeg nødt til å legge inn 0 der jeg ikke har et tall å putte inn? Endret 7. desember 2009 av Azidops Lenke til kommentar
kaffenils Skrevet 7. desember 2009 Del Skrevet 7. desember 2009 Nei, du legger inn NULL. Lenke til kommentar
qwert Skrevet 7. desember 2009 Del Skrevet 7. desember 2009 Problemet her er vel at du eksplisitt forsøker å legge inn NULL i id_firm som er definert som primærnøkkel og auto_increment/NOT NULL. Lenke til kommentar
quantum Skrevet 7. desember 2009 Del Skrevet 7. desember 2009 Problemet her er vel at du eksplisitt forsøker å legge inn NULL i id_firm som er definert som primærnøkkel og auto_increment/NOT NULL. Men dét vil ikke mysql oppdage før den andre feilen er rettet ;-) Lenke til kommentar
Azidops Skrevet 7. desember 2009 Forfatter Del Skrevet 7. desember 2009 Problemet her er vel at du eksplisitt forsøker å legge inn NULL i id_firm som er definert som primærnøkkel og auto_increment/NOT NULL. Men dét vil ikke mysql oppdage før den andre feilen er rettet ;-) Feil mine herrer (?). Det fungerer utmerket. Faktisk er det MySQL som ligger til den NULL-verdien. Men det er ikke det som er spørsmålet. Jeg prøver å legge inn tom verdi inn i attributten 'Cell' (5. inputverdi) og det får jeg ikke til å fungere. Jeg er nødt til å skrive 0 hvis jeg ikke har et telefonnummer å legge inn og det er litt tungvindt synes jeg. Kunne bare gjort det, men prøver å forstå meg på MySQL. Lenke til kommentar
quantum Skrevet 7. desember 2009 Del Skrevet 7. desember 2009 Problemet her er vel at du eksplisitt forsøker å legge inn NULL i id_firm som er definert som primærnøkkel og auto_increment/NOT NULL. Men dét vil ikke mysql oppdage før den andre feilen er rettet ;-) Feil mine herrer (?). Det fungerer utmerket. Faktisk er det MySQL som ligger til den NULL-verdien. Men det er ikke det som er spørsmålet. Jeg prøver å legge inn tom verdi inn i attributten 'Cell' (5. inputverdi) og det får jeg ikke til å fungere. Jeg er nødt til å skrive 0 hvis jeg ikke har et telefonnummer å legge inn og det er litt tungvindt synes jeg. Kunne bare gjort det, men prøver å forstå meg på MySQL. Du har rett, den vil legge til ihht. autoincrement, seff. Men problemet ditt er fortsatt det samme, du må angi en verdi, som kan være f.eks. NULL, hvis du ikke har noe meningsfullt å legge inn. Ingenting mellom de to komma'ene er svjv syntaxfeil, selv om det ikke hadde forundra meg om mysql hadde spist det og lagt til en eller annen «passelig» standardverdi. Lenke til kommentar
Azidops Skrevet 7. desember 2009 Forfatter Del Skrevet 7. desember 2009 Så det finnes ingen måte å leggge inn tomme verdier i en BIGINT altså? Tungvindt å sjekke om det finnes noen verdi for telefonnummer i et skjema for så sette variabelen som skal inn i spørringen til NULL. Lenke til kommentar
quantum Skrevet 7. desember 2009 Del Skrevet 7. desember 2009 Så det finnes ingen måte å leggge inn tomme verdier i en BIGINT altså? Tungvindt å sjekke om det finnes noen verdi for telefonnummer i et skjema for så sette variabelen som skal inn i spørringen til NULL. Du må uansett ha litt input-validering, og når du også skal lagre som numerisk verdi må tallet parses, riktig feilmelding gis om strengen ikke kan parses som et heltall osv. Hva som gjør det så veldig mye mer tungvint å mappe blank til NULL oppi det hele er jeg ikke sikker på. Men, det fins sikkert php-rammeverk som kan ta seg av den kjedelige biten her. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå