Toon posts:

[MySQL] Automatische insert voor soortgelijke gegevens?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Luitjes,

Ik heb een MySQL databse draaien waar ik enkele honderden (en in de toekomst wellicht duizenden) soortgelijke velden in moet voeren. Het enige verschil tussen de velden zit'em in 1 getalwaarde welke telkens met 1 verhoogd dient te worden. Als voorbeeld (1, aap, boom), dan (2, aap, boom), dan (3,aap,boom) etc etc..

Zijn er toevallig clients voor MySQL die dit soort operaties ondersteunen?

Ik weet wel dat ik hiervoor een prog zou kunnen schrijven, maar aangezien de database door iemand zonder IT-verstand beheerd dient te worden zou het mooi zijn wanneer er een wat gebruiksvriendelijkere optie is!

Alvast bedankt :)

Verwijderd

offtopic:
Waarom zou je zoveel dezelfde records willen hebben?? Zie daar niet echt het nut van in?? :?

[ Voor 4% gewijzigd door Verwijderd op 18-04-2005 21:31 ]


Verwijderd

Kijk eens naar de auto_increment mogelijkheid van kolommen...

Verwijderd

Topicstarter
Verwijderd schreef op maandag 18 april 2005 @ 21:31:
offtopic:
Waarom zou je zoveel dezelfde records willen hebben?? Zie daar niet echt het nut van in?? :?
Tja ik kan je wel een complete case omschrijving geven, maar dat is me teveel tiepwerk. Neem nu maar van me aan dat het nodig is ;)

Verwijderd

Topicstarter
Verwijderd schreef op maandag 18 april 2005 @ 21:33:
Kijk eens naar de auto_increment mogelijkheid van kolommen...
Helaas gaat dit niet. In mijn geval maakt het getal een deel van een string uit. Bijvoorbeeld:
referentienr001, referentienr002 etc, waarbij dus dat getal telkens geupdate wordt!

Had ik wellicht wel wat beter uit kunnen leggen..

Verwijderd

auto_increment werkt hier denk ik niet omdat die altijd uniek moet zijn en als ik het goed begrijp is dat getal niet uniek, toch TS?

wat heel misschien wel werkt is zoiets (heel globaal); heb mijn twijfels of het werkt maar het is volgensij wel de goede richting :P

INSERT INTO table (a,b,c) VALUES (1,2,3) UPDATE c=c+1;

edit
als het getal van een string deel uitmaakt wordt het natuurlijk wel ietsje anders :)
Ik denk toch dat het niet echt kan, maar als die kolom die je steeds wijzigt wel uniek is dan kun je wel bovenstaande doen met ON DUPLICATE KEY als het goed is.

[ Voor 30% gewijzigd door Verwijderd op 18-04-2005 21:51 ]


Verwijderd

Als je MySQL 5 hebt kun je een stored procedure maken met een while-lus er in waarin je inserts zet.

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Is het geen mogelijkheid om in php / windows progje gewoon een formulier te maken waarop gebruiken kan invullen :
beginwaarde
eindwaarde
onzinkolom1
onzinkolom2

zodat php / het progje zelf een loop uitvoert die de inserts doet???

Verwijderd

Topicstarter
Gomez12 schreef op maandag 18 april 2005 @ 21:44:
Is het geen mogelijkheid om in php / windows progje gewoon een formulier te maken waarop gebruiken kan invullen :
beginwaarde
eindwaarde
onzinkolom1
onzinkolom2

zodat php / het progje zelf een loop uitvoert die de inserts doet???
Hmm wellicht wel ja! Ik ben niet zo bekend met PHP, is het mogelijk om op de een of andere manier een integer variable in een string op te nemen? Via een typecast oid?

Sorry, C programmeur :)

Verwijderd

Verwijderd schreef op maandag 18 april 2005 @ 21:53:
[...]


Hmm wellicht wel ja! Ik ben niet zo bekend met PHP, is het mogelijk om op de een of andere manier een integer variable in een string op te nemen? Via een typecast oid?

Sorry, C programmeur :)
$string=$getal.$tekst (je kan dus alles aan elkaar koppelen)

  • Suepahfly
  • Registratie: Juni 2001
  • Laatst online: 21-04 16:00
Verwijderd schreef op maandag 18 april 2005 @ 21:53:
[...]


Hmm wellicht wel ja! Ik ben niet zo bekend met PHP, is het mogelijk om op de een of andere manier een integer variable in een string op te nemen? Via een typecast oid?

Sorry, C programmeur :)
PHP zeurt niet om type casting (het is wel mogelijk hoor)

Maar je kan prima het volgende doen
PHP:
1
2
3
4
5
for($i=0; $1< 1000; $i++)
{
    $value = "referentienr" . $i;
    mysql_query("INSERT INTO tabel VALUES('" .$value ."', 'aap', 'boom'");
}


Bovenstaand voorbeeld is niet erg efficient maar je begrijpt het wel, $value word overigens een string maar dat moge duidelijk zijn

[edit]
wat HereIam zegt dus.
PHP:
1
2
$value = "13" + 12;
print($value); // Geeft 25

is zelfs mogelijk

[ Voor 30% gewijzigd door Suepahfly op 18-04-2005 22:03 ]


Verwijderd

Topicstarter
Suepahfly schreef op maandag 18 april 2005 @ 22:00:
[...]

PHP zeurt niet om type casting (het is wel mogelijk hoor)

Maar je kan prima het volgende doen
PHP:
1
2
3
4
5
for($i=0; $1< 1000; $i++)
{
    $value = "referentienr" . $i;
    mysql_query("INSERT INTO tabel VALUES('" .$value ."', 'aap', 'boom'");
}


Bovenstaand voorbeeld is niet erg efficient maar je begrijpt het wel, $value word overigens een string maar dat moge duidelijk zijn
Dat begrijp ik zeker, hartstikke bedankt!

Fijn dat PHP daar niet over zeurt.. wist helemaal niet dat het mogelijk was op deze manier. Geweldig.

Oh btw.. ik neem aan dat wanneer ik via PHP eerst een connectie met MySQL leg, dattie dan automatisch weet dat hij mysql_query de openstaande connectie gehruikt moet worden he?

  • Suepahfly
  • Registratie: Juni 2001
  • Laatst online: 21-04 16:00
Ja dat weet ie.

Je kan een connectie ID meegeven aan de functie, doe je dat niet dan wordt de laats bekende connectie ID gebruikt.

Verwijderd

Verwijderd schreef op maandag 18 april 2005 @ 22:03:
[...]

Oh btw.. ik neem aan dat wanneer ik via PHP eerst een connectie met MySQL leg, dattie dan automatisch weet dat hij mysql_query de openstaande connectie gehruikt moet worden he?
Als er 1 connectie is neemt hij die, anders kun je de connectie meegeven als tweede argument. Zie ook de PHP Manual voor mysql_query() :)
Pagina: 1