[PHP] create table problemen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • enveekaa
  • Registratie: September 2003
  • Laatst online: 06:09
Hoi, dit is de code die ik gebruik.
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
25
26
<?
$query = "CREATE TABLE loslijst ( 
mmr_doosrecordnummer bigint(20) NOT NULL default '0',
mmr_doosnummer bigint(20) NOT NULL default '0',
mmr_inkoopordernr bigint(20) NOT NULL default '0',
mmr_leverancier bigint(20) NOT NULL default '0',
mmr_artikelcode varchar(15) NOT NULL default '',
mmr_ladingnummer varchar(15) NOT NULL default '',
mmr_transportdatum date NOT NULL default '0000-00-00',
mmr_verwachtdatum date NOT NULL default '0000-00-00',
mmr_carton int(11) NOT NULL default '0',
mmr_doosaantal int(11) NOT NULL default '0',
mmr_palletnummer varchar(15) default NULL,
mmr_palletlocatie varchar(15) default NULL,
mmr_chargenummer varchar(15) default NULL,
mmr_uht_datum date default NULL,
mmr_controleur int(11) default NULL,
mmr_ontvangstdatum date default NULL,
mmr_mutatiedatum date default NULL,
mmr_verplaatser int(11) default NULL,
mmr_recordgewijzigd enum('0','1') default NULL,
mmr_recordexportgedaan enum('0','1') default NULL,
##mmr_gescand enum('0','1') default '0' NOT NULL,
##mmr_max_per_pallet bigint(20) NOT NULL default '100' );";
mysql_query($query);
?>


Het werk allemaal, de db is kloppend na dit script op 1 ding na. IK heb de regels waar vermoedelijk het probleem inzit even met ## aangegeven.

Ik wil dus het veld: mmr_gescand op enum (0 of 1) hebben met als standaard waare 0.
En veld mmr_max_per_pallet op bigint(20) standaard 100.

Echter het resultaar is dat mmr_gescand geen waarde heeft en mmr_max_per_pallet waarde 0 krijgt.. dus de waarde die mmr_gescand zou moeten hebben.

De syntax heb ik zo uit MyPHPAdmin gehaald.. heb al meerdere variaties uit geprobeerd maar het is tot nu toe niet gelukt. Wellicht ziet iemand in een oogopslag wat ik fout doe :) ik staar me waarschinlijk blind op het verkeerde probleem.

Alvast bedankt.. Nick

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

enveekaa schreef op 03 november 2004 @ 18:54:
De syntax heb ik zo uit MyPHPAdmin gehaald.. heb al meerdere variaties uit geprobeerd maar het is tot nu toe niet gelukt. Wellicht ziet iemand in een oogopslag wat ik fout doe :) ik staar me waarschinlijk blind op het verkeerde probleem.
Je zegt dat je de syntax uit phpMyAdmin hebt. Ik neem dan aan dat je niet de gehele query in phpMyAdmin gemaakt hebt (een gevoel wat versterkt wordt dat de twee betreffende regels een verschillende volgorde van parameters hebben). Maak de tabel eens gewoon aan in phpMyAdmin, en kopiëer de query die je dan te zien krijgt, dan gaat er waarschijnlijk niks mis.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • Postman
  • Registratie: Februari 2000
  • Laatst online: 18-09 19:05
Probeer eens default achter NOT NULL te zetten ipv ervoor. Zal wel niks uitmaken, maar zo is de syntax en ik zie zo 1-2-3 ook geen andere fouten.

Acties:
  • 0 Henk 'm!

  • enveekaa
  • Registratie: September 2003
  • Laatst online: 06:09
@MNe84: heb ik al een keer gedaan, en die volgorde zet phpMyAdmin zelf zo, dus daar ligt het niet aan.

@Postman: ik heb beide varianten al een keer geprobeerd:
code:
1
2
mmr_gescand enum('0','1') NOT NULL default '0' )";
mmr_gescand enum('0','1') default '0' NOT NULL )";

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

enveekaa schreef op 03 november 2004 @ 19:15:
@MNMe84: heb ik al een keer gedaan, en die volgorde zet phpMyAdmin zelf zo, dus daar ligt het niet aan.
Die volgorde (hetzelfde waar Postman op doelt) zet phpMyAdmin echt niet voor 2 regels beide op een andere manier neer.

Verder, als het met een table die phpMyAdmin maakt ook niet werkt, dan ligt het niet aan de tabledefinitie, maar waarschijnlijk aan je insert-query. Laat die eens zien?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • enveekaa
  • Registratie: September 2003
  • Laatst online: 06:09
De inset is LOAD DATA FROM FILE, maar de mmr_gescand waarde moet gewoon standaard bij het inlezen 0 zijn, dat staat niet gedefinieerd in het bestand waar de andere data uitkomt. Maar zonder waarde zou hij toch default 0 moeten zijn?

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

enveekaa schreef op 03 november 2004 @ 19:21:
De inset is LOAD DATA FROM FILE, maar de mmr_gescand waarde moet gewoon standaard bij het inlezen 0 zijn, dat staat niet gedefinieerd in het bestand waar de andere data uitkomt. Maar zonder waarde zou hij toch default 0 moeten zijn?
Dat hangt er maar net vanaf hoe je bestand eruit ziet. :P

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • enveekaa
  • Registratie: September 2003
  • Laatst online: 06:09
Ja maar het gekke is, ik heb het geprobeerd met een bigint veld, en daarmee kan ik dus wel een standaard waar 0 geven, dus ipv enum, bigint(20) of varchar(20).. werkte allebei. Het gaat dus fout met het enum column-type.. :)

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Laat gewoon eens een wat data zien uit die file, dan zien we misschien eerder waar het fout gaat. Je tabledefinitie klopt iig gewoon voor zover ik zie.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • enveekaa
  • Registratie: September 2003
  • Laatst online: 06:09
Ik zie nu dat dat data bestand gescrambeld is, ik ga dit eerst even uitzoeken, misschien dat het daar aan ligt.. waarschijnlijk omdat ik het ingepakt is geweest in een TAR oid. Vaag...
Effe kieke! :P
Pagina: 1