[PHP/MYSQL] Rij invoegen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
In mijn database zitten zeer veel tabellen (meer dan 1000) en ze hebben allemaal de phpBB-structuur met een ander prefix.
Dus bijvoorbeeld:
jantje_users
jantje_posts
... etc ...
jantje_threads
jantje_hallo
pietje_users
pietje_posts
... etc ...
pietje_threads
pietje_hallo
enzovoorts.

De tabel 'hallo' heeft 1 rij en 1 kolom (hoeft maar 1 waarde in opgeslagen te worden).
Nu wil ik in deze tabel een extra rij invoegen.

Allereerst moeten dus de juiste tabellen worden geselecteerd (die eindigen op _hallo) en daarna moet in deze tabellen een rij worden ingevoegd.

Zou iemand voor mij een php-scriptje kunnen maken waarbij dit gebeurt?

Alvast hartelijk dank.
(Ik heb het ook zelf geprobeerd maar ik kwam er echt niet uit en een search leverde ook niks op).

Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 16:51
Je opzet klopt niet helemaal, en dat is heel erg netjes gezegt. Kijk eens wat normaliseren betekent. Begin bijvoorbeeld met het volgende:

tabel users: id-naam
tabel posts: id-post-userid

na de : staan dus wat velden. Als je nu dus de naam bijvoorbeeld aanpast, zal deze automatisch verschijnen bij alle posts.

Jelmer geeft toevallig precies hetzelfde voorbeeld 8)

[ Voor 34% gewijzigd door djluc op 27-10-2003 17:00 ]


Acties:
  • 0 Henk 'm!

  • Jelmer
  • Registratie: Maart 2000
  • Laatst online: 21:24
misschien is een cursus databases en normalisatie een idee voor je...

Verder wil ik best wat voor je maken, kost je wel €300/u ex BTW.

Ohja, mss is de FAQ ook wel nuttig om door te lezen.


(over het algemeen is een database relationeel, dwz je hebt 1 tabel posts en users, en vervolgens verwijs je vanuit posts naar een userID)

Acties:
  • 0 Henk 'm!

  • Zoolander
  • Registratie: Januari 2003
  • Laatst online: 23-11-2022

Zoolander

superslim!

amen.

mijn naam slaat nergens op, althans niet op mij :P


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik host verschillende phpBB-forums op mijn hosting (gratis overigens) en hierbij maak ik dus gebruik van dit systeempje met prefixes. Omdat het bijna onbegonnen werk ik om de hele phpBB-source te doorlopen is dit een toch beter alternatief: voor ieder forum een aantal tabellen.
Het is misschien niet zo netjes maar het werkt wel.

Zou niemand kunnen aangeven hoe ik dit zou kunnen doen?


Waarom zijn scriptrequests overigens niet toegestaan?
Ik snap niet wat er mis mee is, en op deze manier kun je elkaar helpen, toch?
Jammer iig, want het zijn gewoon een soort problemen die je hebt...

[ Voor 21% gewijzigd door Verwijderd op 27-10-2003 17:59 ]


Acties:
  • 0 Henk 'm!

  • ATS
  • Registratie: September 2001
  • Laatst online: 15:14

ATS

Goed, één hint:
De databasestructuur in php is ook een database. Dus kan je door middel van een query de namen van de tabellen die je zoekt achterhalen. Hoe precies? Zoek dat maar op in de prima MySQL documentatie.

My opinions may have changed, but not the fact that I am right. -- Ashleigh Brilliant


Acties:
  • 0 Henk 'm!

  • DukeBox
  • Registratie: April 2000
  • Laatst online: 22:50

DukeBox

loves wheat smoothies

Een simpele maar doeltreffende oplossing vanuit een console:
cat /etc/mysql/data/hallo* -r|mysqldec -q[query] > output
voert op ieder table die begint met hallo de query uit. hier kan je nog op greppen e.d. Wil echt vanuit mysql kan dat ook.. maar weet ik zo niet 123 uit mijn hoofd.

[ Voor 54% gewijzigd door DukeBox op 27-10-2003 18:08 ]

Duct tape can't fix stupid, but it can muffle the sound.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik weet hoe ik een tabel kan selecteren, maar hoe kan ik ervoor zorgen dat alle tabellen die eindigen op een bepaalde tekst worden geselecteerd?
Ik heb uiteraard gezocht op mysql.com maar er bestaat niet zoiets als een joker (*) in een query.
Zou je me gewoon even de query kunnen geven of kunnen aangeven waarop ik moet zoeken?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
DukeBox schreef op 27 October 2003 @ 18:07:
Een simpele maar doeltreffende oplossing vanuit een console:
cat /etc/mysql/data/hallo* -r|mysqldec -q[query] > output
voert op ieder table die begint met hallo de query uit. hier kan je nog op greppen e.d. Wil echt vanuit mysql kan dat ook.. maar weet ik zo niet 123 uit mijn hoofd.
Het is eigenlijk de bedoeling dat ik het vanuit phpmyadmin of via een php-script kan uitvoeren omdat ik niet direct toegang heb tot de server. Iig toch bedankt voor je reactie.

Acties:
  • 0 Henk 'm!

  • esf
  • Registratie: Juni 2002
  • Laatst online: 21-02 08:56

esf

Voor zover ik weet is een query bedoeld om in tabellen te zoeken, niet om tabellen met een bepaalde naam te zoeken. Dus via SQL gaat het volgens mij niet. Misschien kan je in PHP een SHOW TABLES commando kunnen geven, en dan met behulp van reguliere expressies de juiste tabellen er uit kunnen vissen. Vervolgens kun je voor elk resultaat een query opbouwen om een rij in te voegen.

The hardest thing in the world to understand is the income tax. - Albert Einstein

Pagina: 1