[mysql] error bij INSERT

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

  • DPLuS
  • Registratie: April 2000
  • Niet online
Ik snap niet waarom MySQL hier een foutmelding geeft...

Klopt die SQL syntax niet???
code:
1
2
3
4
5
6
Error 
SQL-query: 

"INSERT INTO registered VALUES ('1','UserName','UserPassword','UserEmail','CompanyName','FirstName','LastName','Gender','Address','ZipCode','City','State','Country,'Phone','Fax','HomePage','US')"
MySQL said: You have an error in your SQL syntax near '"INSERT INTO registered VALUES ('1','UserName','UserPassword','UserEmail','Compa' at line 1
Back

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Doe je het in PHP??

Zo ja wat is dan je gehele string? *D

Sundown Circus


  • KnEuTeR
  • Registratie: Mei 2000
  • Laatst online: 24-02-2024

KnEuTeR

iedereen heeft een handelsmerk

de syntax zal wel kloppen het is met PHPmyADMIN gedaan.

je zal zelf wel een fout maken

Computers ain't that smart, Whatever man built could be taken apart


Verwijderd

Hoe voer je die string uit? (Beetje code erbij enzo:) )

  • Onno
  • Registratie: Juni 1999
  • Niet online
Het lijkt alsof je double quotes om je query heen hebt gezet? Laat die eens weg.

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Of de velden zijn niet goed gedefinieerd of
je hebt slashes/haakjes te veel of te weinig.

Laat inderdaad de code ff zien *D

Sundown Circus


  • DPLuS
  • Registratie: April 2000
  • Niet online
Dit is hoe ik de tabel gedefinieerd heb:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#
# Table structure for table 'registered'
#

CREATE TABLE registered (
   UserID bigint(20) NOT NULL auto_increment,
   UserName varchar(50) NOT NULL,
   UserPassword varchar(50) NOT NULL,
   UserEmail varchar(150) NOT NULL,
   CompanyName varchar(200) NOT NULL,
   FirstName varchar(100) NOT NULL,
   LastName varchar(100) NOT NULL,
   Gender varchar(10) NOT NULL,
   Address varchar(200) NOT NULL,
   ZipCode varchar(50) NOT NULL,
   City varchar(150) NOT NULL,
   State varchar(150) NOT NULL,
   Country varchar(150) NOT NULL,
   Phone varchar(100) NOT NULL,
   Fax varchar(100) NOT NULL,
   HomePage varchar(200) NOT NULL,
   language varchar(10) NOT NULL,
   PRIMARY KEY (UserID)
);

En dit is de PHP-code:
PHP:
1
2
3
4
<?
mysql_connect("localhost","iemand","wachtwoord");
mysql("db","INSERT INTO registered VALUES ('$UserID','$UserName','$UserPassword','$UserEmail','$CompanyName','$FirstName','$LastName','$Gender','$Address','$ZipCode','$City','$State','$Country,'$Phone','$Fax','$HomePage','$language')") or die(mysql_error());
?>

Ik heb toen net alle data uit die tabel registered verwijderd (EMPTY), en toen kon ik handmatig via PHP-admin wel data toevoegen, maar met PHP geeft 'ie de volgende foutmelding:
code:
1
You have an error in your SQL syntax near '4245','2342','http://www.gratis.nl','US')' at line 1

Ik snap er niets van...

Verwijderd

Om een bigint moet je in iedergeval geen 'tjes zetten!

Verwijderd

[even anders wat]
Er mag maar 1 autofield zijn in je table, en die moet je een key maken.
Dus bij je userID moet je nog even primary key zetten.
[/even anders wat]

[hint mode]
http://www.php.net/mysql en kijk eens mij mysql error enz.
[/hint mode]

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

ik denk dat je die '1' moet vervangen door ''

Doet iets met Cloud (MS/IBM)


  • DPLuS
  • Registratie: April 2000
  • Niet online
Maar die $UserID heeft nog geen waarde.
Pas als die data in de db gestopt wordt, bekijkt MySQL wat die waarde moet zijn, aangezien bij de properties gedefinieerd staat dat UserID auto_increment is...

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op woensdag 04 juli 2001 15:59 schreef DPLuS het volgende:
Maar die $UserID heeft nog geen waarde.
Pas als die data in de db gestopt wordt, bekijkt MySQL wat die waarde moet zijn, aangezien bij de properties gedefinieerd staat dat UserID auto_increment is...
probeer het eens
volgens mij is dat het echt

Doet iets met Cloud (MS/IBM)


Verwijderd

Op woensdag 04 juli 2001 15:59 schreef DPLuS het volgende:
Maar die $UserID heeft nog geen waarde.
Pas als die data in de db gestopt wordt, bekijkt MySQL wat die waarde moet zijn, aangezien bij de properties gedefinieerd staat dat UserID auto_increment is...
Tja, dan moet je die ook niet opgeven natuurlijk. Specificeer in je query welke velden je een waarde gaat geven, ipv van ze gewoon allemaal een waarde proberen te geven.

  • DPLuS
  • Registratie: April 2000
  • Niet online
Jongens, ik weet nu waar het aan ligt!!

Kijk eens naar die PHP-code:
code:
1
City','$State','$Country,'$Phone','$Fax','$HomePage'

Bij $Country ben ik de ' vergeten!!
Ik begreep al niet waar het aan kon liggen, heel die code weer omgegooid, db leeggepompt, properties aangepast, en dan blijkt het gewoon weer zoiets simpels te zijn....

Nou ja, iedereen iig bedankt voor de hulp...

Verwijderd

Als je met een not null auto_increment primary key veld werkt kun je dus automatisch je ID's genereren. Waarschijnlijk wist je dit wel, maar ik meld het toch nog even voor het geval dat.

Met INSERT into blaat values ('null', 'schaap'); krijg je eerste row een 1.

je volgende row wordt dus 2, geit en je derde 3, bokkie bijv.

dan hoef je dus niet meer zelf je uniques aan te geven. Snappie?

Verwijderd

Op woensdag 04 juli 2001 16:12 schreef DPLuS het volgende:
Jongens, ik weet nu waar het aan ligt!!

Kijk eens naar die PHP-code:
code:
1
City','$State','$Country,'$Phone','$Fax','$HomePage'

Bij $Country ben ik de ' vergeten!!
Ik begreep al niet waar het aan kon liggen, heel die code weer omgegooid, db leeggepompt, properties aangepast, en dan blijkt het gewoon weer zoiets simpels te zijn....

Nou ja, iedereen iig bedankt voor de hulp...
En werkt het nu?

  • DPLuS
  • Registratie: April 2000
  • Niet online
Ja....

Verwijderd

Op woensdag 04 juli 2001 16:28 schreef DPLuS het volgende:
Ja....
Mooi is dat: zaten we allemaal onzin uit te kramen! ;)

Verwijderd

Nee hoor, we zeiden best wel zinnige dingen... toch?

  • Choller
  • Registratie: Juli 2001
  • Laatst online: 22-05-2024
Lol...ik heb ook zo'n probleem. Hij geeft geen error, de waarden kloppen wel , maar op een of andere manier voert ie het niet in de database. Rare is dat als ik alleen de eerste waarden invoert (dus ik delete de laatse 20 kolommen en waarden) dan werkt het wel :?
PHP:
1
&lt;? mysql_connect (blablabla);mysql_select_db (blabla);$sql1 = &quot;INSERT INTO sat_specs (spe_ont_id, spe_nr_channels, spe_positioner, spe_harddisk, spe_upgrades_id, spe_polariser_id, spe_lnb_input, spe_diseqc_id, spe_osd, spe_epg_id, spe_lo, spe_mcpc, spe_scpc, spe_ci, spe_pcmcia, spe_modem, spe_serial, spe_scsi, spe_usb, spe_scart_tv, spe_scart_vcr, spe_scart_aux, spe_teletext_id, spe_digiaudio_id, spe_prijs) VALUES ('$spe_ont_id', '$spe_nr_channels', '$spe_positioner', '$spe_harddisk', '$spe_upgrades_id', '$spe_polariser_id', '$spe_lnb_input', '$spe_diseqc_id', '$spe_osd', '$spe_epg_id', '$spe_lo', '$spe_mcpc', '$spe_scpc', '$spe_ci', '$spe_pcmcia', '$spe_modem', '$spe_serial', '$spe_scsi', '$spe_usb', '$spe_scart_tv', '$spe_scart_vcr', '$spe_scart_aux', '$spe_teletext_id', '$spe_digiaudio_id', '$spe_prijs')&quot; or die (mysql_error());$result1 = mysql_query($sql1);?&gt;

?>

  • Grum
  • Registratie: Juni 2001
  • Niet online
O M F G

ga je query es herschrijven zoals beschreven staat in de FAQ .. dit is NIET leesbaar .. naast dat et et forum totaal VERNEUKT ....

tnx!

  • Choller
  • Registratie: Juli 2001
  • Laatst online: 22-05-2024
Wat bleek....

spe_lnb_input moet spe_lnb_inputs zijn.

dom dom dom dom dom dom dom }:O |:( }:O |:( .
Pagina: 1