insert_id

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C# developer

Functie Als ervaren Software Engineer wordt jij verantwoordelijk voor het bedenken en ontwikkelen van technische (maatwerk) oplossingen voor onze klanten en dit samen met de klant af te stemmen. Jij wordt o.a. verantwoordelijk voor de doorontwikkeling het software pakket welke voor ons enorm belangrijk is. Dit pakket zorgt er namelijk voor dat wij complete productielijnen kunnen aansturen en monitoren. Daarnaast heb jij actief contact met onze hoofdvestiging om het software achter een van onze systemen te verbeteren en te herschrijven. Momenteel zijn onze C# applicaties geschreven met o.a. Winforms. Echter hebben wij de actieve ambitie om dit te gaan herschrijven

Bekijk vacature »

Trainee pega developer

Wil jij een mooie stap maken in jouw carrière? Mooi! Bij De Mandemakers Groep haal je binnen 6 maanden je CSA- en CSSA-certificaten, waarna jij aan de slag kan als Pega-developer in ons IT-team. Achter de schermen zorg jij ervoor dat collega’s efficiënt werken en klanten iedere dag beter geholpen worden. Wil jij daaraan bijdragen? En jouw ICT-skills ontwikkelen? Lees dan snel verder en solliciteer vandaag nog als trainee Pega-developer. Wat ga je doen? Als trainee Pega developer leiden wij je op tot gecertificeerd software developer voor het low-code platform PegaSystems. In de training ben je verantwoordelijk voor een te

Bekijk vacature »

Back-end Developer

Functieomschrijving Heb jij kort geleden je HBO ICT Informatica diploma in ontvangst mogen nemen? Of heb je een aantal jaar ervaring als Software Developer en ben je klaar voor een nieuw hoofdstuk in jouw carrière? Voor een gewaardeerde werkgever in de regio van Goirle zijn wij op zoek naar een junior/medior Back-end Developer met affiniteit met MS Acess. Samen met een vooruitstrevend team ben je verantwoordelijk voor het ontwikkelen van maatwerk software voor hun klanten. Je hebt kennis of ervaring van SQL en affiniteit met MS Acess. Je bent klantvriendelijk en flexibel ingesteld en vindt het leuk om klanten te

Bekijk vacature »

Ontwikkelaar MS Dynamics 365 Projecten

Samengevat: Deze werkgever is de kwaliteitsdienst in de tuinbouwsector. Ben jij een ervaren ontwikkelaar? Heb jij ervaring met Ms Dynamics 365 BC? Vaste baan: Ontwikkelaar Ms Dynamics 365 BC ICT MBO 3.500 - 5.000 Ontwikkelaar Ms Dynamics 365 BC Ons bedrijf bewaakt en bevordert de kwaliteit van producten, processen en ketens in de tuinbouw. Wij kenmerken zich door openheid, ruimte voor initiatief, collegialiteit en zelfontplooiing. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Functie: Voor de vacature als Ontwikkelaar Ms Dynamics 365 BC Roelofarendsveen MBO

Bekijk vacature »

Front-end Developer Angular

Dit ga je doen Jouw taken als Front End Developer bestaan uit: Het ontwikkelen van maatwerkoplossingen voor klanten; Het meedenken over nieuwe tools en technieken; Het begeleiden van junioren; Het meewerken aan diverse projecten; Het meedenken in UX/UI design. Hier ga je werken Als Front-End Developer ga je in een Scrum team aan de slag met de nieuwste digitale technologieën om klanten en overheden over de hele wereld te ondersteunen met het ondersteunen van hun software, veelal op het gebied van watermanagement en infra. Door middel van real-time data in combinatie met voorspellende analyses, AI, Deep Learning en Machine Learning

Bekijk vacature »

Team Lead Java Developer

Functie Wat ga je doen als Java developer? Als Team Lead Java Developer draag een grote verantwoordelijk je stuurt ontwikkelaars aan en staat dagelijks in contact met jou ICT Manager. De team Bestaat uit front-end en backend systemen. Je ben in staat op hoog niveau de technische vak te bepalen en ook te bewaren. Je dag zie er als volgt uit, ontwikkelen van nieuwe en bestaande applicaties, het uitvoeren van processen en analyses en het beschrijven van functioneel ontwerpen. Ook zal samen met jouw Tester applicaties gaan testen door middel van peer reviews en het leveren van support aan gebruikers

Bekijk vacature »

.NET Developer gezocht!

Functie omschrijving Wij zijn op zoek naar een .NET Developer! Wil jij werken voor een internationaal bedrijf waar je legio mogelijkheden krijgt als Software Ontwikkelaar? Grijp nu je kans en kijk snel of jouw vaardigheden aansluiten bij onderstaand profiel! Je kunt een uitdagende rol gaan vervullen als .NET Developer binnen een internationaal bedrijf dat gevestigd is in omgeving Bergen. Dit bedrijf is zeer vooruitstrevend en verricht betekenisvol werk. Binnen dit bedrijf wordt gewerkt aan de productie en ontwikkeling van medische middelen. Als .NET Developer ga jij je bezig houden met het volgende: Je wordt betrokken bij alle fasen van software

Bekijk vacature »

Software Developer C# / ASP .Net

Functie omschrijving Ben jij een software ontwikkelaar die bekend is met termen ASP .NET, C# en SQL? Lees dan snel verder! Voor een bedrijf binnen de agrarische sector zijn wij namelijk op zoek naar een zelfstandige, enthousiaste en proactieve Software Developer die open staat voor een afwisselende functie met veel uitdaging. Binnen deze organisatie ben jij als Software Developer samen met één andere collega verantwoordelijk voor de ontwikkeling en modificatie van het support en controle programma dat binnen dit bedrijf gebruikt wordt. Hierbij draag jij bij aan de vertaling van klantwensen naar effectieve softwareoplossingen. Daarnaast ben je verantwoordelijk voor: Schatten

Bekijk vacature »

Softwareontwikkelaar Cleopatra

Functieomschrijving: De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van bromen snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie.De opdracht bestaat uit: het programmeren van de diverse modules;het tijdens demo's tonen van de

Bekijk vacature »

Lead Front-end developer

Functie Hun huidige applicatie worden ontwikkeld in o.a. React, Redux, TypeScript. Ze werken graag met de nieuwste technieken en tooling en zoeken ook developers die hier proactief op zoek naar gaan. Als senior/lead developer ben je een kartrekker in het team. Naast het meedenken over bijvoorbeeld de architectuur of toepassing van nieuwe technieken krijg je ook veel tijd om de meer junior (front-end) developers te begeleiden. Zo kun je bijvoorbeeld 1 dag in de week met 2 collega’s bezig zijn om samen met hen te kijken naar hun ontwikkeling, doelstellingen en uiteraard de gewenste begeleiding hierin. Hiernaast sta je als

Bekijk vacature »

C#.NET Developer

Functieomschrijving Voor een software ontwikkelaar in de omgeving van Vught zijn we op zoek naar een gemotiveerde C# ontwikkelaar. Deel jij hun passie voor development en dan vooral in C#.NET? Dan kan dit wel eens jouw droombaan zijn! Jouw werkzaamheden zullen er ongeveer als volgt uit gaan zien Door de wensen van de klant goed te begrijpen ga jij aan de slag dit om te zetten naar passende oplossingen en werk je deze uit tot een sterk eindproduct. Je gaat je bezighouden met de ontwikkeling van webapplicaties en websites, dit doe je door middel van ASP.NET, MVC Frameworks en C#.

Bekijk vacature »

.NET Developer Microservices

Dit ga je doen Je taken zullen voornamelijk bestaan uit: Het ontwikkelen van software, inclusief vormgeving, implementaties, integraties en (automatisch) testen (.NET, C#, Azure, Docker, Microservices, Angular); Het in kaart brengen van software requirements; Zorgen dat jouw code kwalitatief hoogstaand is; Het uitvoeren van risico analyses; Een bijdrage leveren aan het continuous quality improvement process. Hier ga je werken Dat kanker een verschrikkelijke ziekte is die de wereld uit geholpen moet worden, is duidelijk. Binnen deze Gelderse organisatie die duizenden ziekenhuizen van producten voorziet, proberen ze daar via technische innovaties aan bij te dragen. Samen met 10 collega .NET developers

Bekijk vacature »

Senior Front-End Developer

As a Senior Front-end Developer you maintain the balance between creativity and functionality for our webshop, and you coach your fellow developers. How do I become a Senior Front-End Developer at Coolblue? As a Front-end Developer you work on the user-friendliness of our webshop for millions of customers. You enjoy working with the UX Designer to pick up stories. You get energy from coming up with creative solutions and are happy to present this within the team. You are also proud of your work and welcome all feedback. Would you also like to become a Senior Front-End Developer at Coolblue?

Bekijk vacature »

Senior PHP developer met ambities tot Software Arc

Functie Momenteel zijn ze op zoek naar een ervaren PHP developer die zichzelf graag bezighoudt met zaken als architectuur en de algehele verbetering van structuren en standaarden. Het is eigenlijk meer operationeel als uitvoerend omdat je bezig gaat met zaken als het verder uitrollen en verbeteren van testautomatisering, codereviews, tickets en de doorloop hiervan en architectuurkeuzes. Mocht je hiernaast ook wat DevOps kennis meenemen is dit mooi meegenomen! Vanwege het kleine team maar de wereldwijde impact die zij leveren is er veel focus op kwaliteit. In deze functie werk je aan één van hun belangrijkste applicaties. Hierin werk je nauw

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Pagina: 1 2 volgende »

Paul Ulje

Paul Ulje

18/09/2016 19:44:07
Quote Anchor link
W3Schools zegt:
If we perform an INSERT or UPDATE on a table with an AUTO_INCREMENT field, we can get the ID of the last inserted/updated record immediately: $last_id = $conn->insert_id;

Mijn testcode wordt dan :
$db = openDB(); // OO-functie de db-connectie afhandelt, werkt foutloos
if ($pid === 9999) $p = $db->query($qInsert); // zonder pid
else $p = $db->query($qUpdate); // met de optie WHERE pid='$pid'

$pid = $db->insert_id; // ZOU in allebei de gevallen de laatste AI-waarde moeten geven ?

$db->close();
print $pid; // geeft 0 dus waarschijnlijk NULL

Heeft iemand enig idee wat ik fout doe?
 
PHP hulp

PHP hulp

16/11/2024 00:49:43
 
- SanThe -

- SanThe -

18/09/2016 19:54:58
Quote Anchor link
Laat de daadwerkelijke code eens zien.
 
Paul Ulje

Paul Ulje

18/09/2016 20:02:15
Quote Anchor link
/ SCHERMGEGEVSNS OPSLAAN in DB -----------------------------------------------
if (isset($_POST['opslaan'])) {
$id = $_SESSION['id'];
$aanspreek = $_POST['aanspreek'];
$voornaam = ucfirst($_POST['voornaam']);
$voorletters = strtoupper($_POST['voorletters']);
$tussenvoeg = strtolower($_POST['tussenvoeg']);
$achternaam = ucfirst($_POST['achternaam']);
$straat = ucwords($_POST['straat']);
$postcode = strtoupper($_POST['postcode']);
$plaats = strtoupper($_POST['plaats']);
$telefoon = $_POST['telefoon'];
$mobiel = $_POST['mobiel'];
$email = $_POST['email'];
$gebdat = $_POST['gebdat'];
$categorie = ucfirst($_POST['categorie']);
$opmerking = $_POST['opmerking'];
$qInsert = " insert into naw
( aanspreek, voornaam, voorletters, tussenvoeg,
achternaam, straat, postcode, plaats, telefoon, mobiel,
email, gebdat, categorie, opmerking ) values
( '$aanspreek', '$voornaam', '$voorletters',
'$tussenvoeg', '$achternaam', '$straat', '$postcode',
'$plaats', '$telefoon', $mobiel', '$email', '$gebdat',
'$categorie', '$opmerking' ) ";
$qUpdate = " update naw set
aanspreek='$aanspreek', voornaam='$voornaam', voorletters='$voorletters',
tussenvoeg='$tussenvoeg', achternaam='$achternaam', straat='$straat',
postcode='$postcode', plaats='$plaats', telefoon='$telefoon',
mobiel='$mobiel', email='$email', gebdat='$gebdat',
categorie='$categorie', opmerking='$opmerking'
where id='$id' ";
$db = openDB();
if ($id === 9999)
$p = $db->query($qInsert);
else
$p = $db->query($qUpdate);
$id = $db->insert_id;
$db->close();
print $id;
}
 
- SanThe -

- SanThe -

18/09/2016 20:09:38
Quote Anchor link
Doe eens een echo $_SESSION['id'];
 
Paul Ulje

Paul Ulje

18/09/2016 20:15:52
Quote Anchor link
01037
print $id = 0
print $_SESSION['id'] = 1037 (bestaand record)
Het bestaande record wordt ook netjes gewijzigd.
Dus MySQLI lijkt verder foutloos verlopen.

09999
print $id = 0
print $_SESSION['id'] = 9999 (aanduiding voor nieuw record dat nog een AI moet krijgen)
Gewijzigd op 18/09/2016 20:18:04 door Paul Ulje
 
- SanThe -

- SanThe -

18/09/2016 20:26:45
Quote Anchor link
Maak van die print $id eens dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
print ($id === NULL) ? 'NULL' : 'Gewoon nul';
?>


Quote:
The mysqli_insert_id() function returns the ID generated by a query on a table with a column having the AUTO_INCREMENT attribute. If the last query wasn't an INSERT or UPDATE statement or if the modified table does not have a column with the AUTO_INCREMENT attribute, this function will return zero.
 
Paul Ulje

Paul Ulje

18/09/2016 20:43:03
Quote Anchor link
01073Gewoon nul
01069Gewoon nul
09999Gewoon nul

De kolom id heeft wel degelijk een A_I status en is primaire sleutel.
Zou het helpen om bij het opslaan wél de id dan wel een explicite NULL mee te geven?
Update: nee, dat maakt niets uit.

Overigens is deze code, op het insert_id en OO verandering na, al meer dan 15 jaar tot volle tevredenheid in gebruik. De reden om insert_id toe te voegen is om de gelegenheid te hebben onvolledige records in te voegen. Voorheen zocht ik de laaste gewoon opnieuw op met SELECT op 'voornaam' 'achternaam' en 'plaats'.
Gewijzigd op 18/09/2016 20:47:01 door Paul Ulje
 
- SanThe -

- SanThe -

18/09/2016 20:48:37
Quote Anchor link
Ik zou het zo even niet weten.
Zeker de INSERT zou het insert_id moeten teruggeven.
 
Paul Ulje

Paul Ulje

18/09/2016 21:13:48
Quote Anchor link
Dank voor je inspanning.
Normaliter zoek ik al gauw een omweg als ik een probleem niet snap.
Maar die zag ik nu even niet voor de hand liggen.

Wat ik me nu net bedenk is het volgende:

function getMaxAI() {
$db = openDB();
$p = $db->query(" select * from naw order by id desc ");
$row = $p->fetch_row(); // dat is het record met 9999
$row = $p->fetch_row();
$id=$row[0];
$db->close();
return $id;
}

En het werkt!
Nogmaals erg bedankt!
Gewijzigd op 18/09/2016 21:23:24 door Paul Ulje
 
Ben van Velzen

Ben van Velzen

18/09/2016 21:25:00
Quote Anchor link
Ehm nee, niet doen. Je kan er niet vanuit gaan dat je dan het juiste id krijgt. De enige correcte manier na een insert is insert_id gebruiken, en bij een update weet je deze al.
 
Pipo Clown

Pipo Clown

18/09/2016 23:15:09
Quote Anchor link
Probeer het eens zo :


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
$db = openDB(); // OO-functie de db-connectie afhandelt, werkt foutloos
if ($pid === 9999) {
   $p = $db->query($qInsert); // zonder pid
   $pid = $db->insert_id; // ZOU in allebei de gevallen de laatste AI-waarde moeten geven ?
}
else $p = $db->query($qUpdate); // met de optie WHERE pid='$pid'

$db->close();
print $pid; // geeft 0 dus waarschijnlijk NULL


Volgens mij werkt insert_id niet bij een update omdat daarbij de update al bestaat.
 
Ivo P

Ivo P

19/09/2016 00:22:18
Quote Anchor link
Je weet dat na 9998 inserts er een record gaat komen met id 9999?

Waarom dan niet $id = null
 
Willem vp

Willem vp

19/09/2016 00:49:28
Quote Anchor link
Ben van Velzen op 18/09/2016 21:25:00:
Ehm nee, niet doen. Je kan er niet vanuit gaan dat je dan het juiste id krijgt. De enige correcte manier na een insert is insert_id gebruiken, en bij een update weet je deze al.

Helemaal mee eens. Als het misgaat is dit bovendien een draak van een bug om op te sporen. Het kan misgaan als twee verschillende clients tegelijkertijd een record invoegen. In plaats van het id van het record dat je zelf invoegde, kun je dan het id van de andere client krijgen. Veel plezier met het uitzoeken waarom meneer Jansen ineens van Lelystad naar Delfzijl is verhuisd. ;-)

Wat je wel zou kunnen doen is een SELECT LAST_INSERT_ID(). Die geeft het id van het laatst ingevoegde id voor de betreffende db-connectie en heeft dus geen last van concurrent inserts.
 
Ward van der Put
Moderator

Ward van der Put

19/09/2016 02:24:56
Quote Anchor link
Paul Ulje op 18/09/2016 19:44:07:
if ($pid === 9999)

Paul Ulje op 18/09/2016 20:15:52:
09999

Paul Ulje op 18/09/2016 20:43:03:
09999Gewoon nul

09999 !== 9999
Gewijzigd op 19/09/2016 02:25:27 door Ward van der Put
 
Paul Ulje

Paul Ulje

19/09/2016 14:20:06
Quote Anchor link
Ik geloof dat ik met mijn slordige voorbeeld de discussie wat in de war heb gestuurd. Let niet op de 9999, die heeft er niks mee te maken, die was er alleen in de test. En 09999 bestaat uit twee print resultaten. Dus daar is geen vergelijk met de string 9999 van toepassing.

De functie getMaxID() is een OMWEG voor het FALENDE insert_id, de oorzaak van deze draad.

De door MySQL doorgenummerde A_I nummers komen in een veld genaamd ID.
- Wanneer een nieuw record wordt ingevoegd komt er dus een nieuw ID. Dát nummer wil ik weten.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
function getMaxAI() {
$db = openDB();
$p = $db->query(" select * from naw order by id desc ");
$row = $p->fetch_row();
$id=$row[0];
$db->close();
return $id;
}

?>


En dat werkt naar volle tevredenheid.

Toevoeging op 19/09/2016 14:23:29:

Ivo P op 19/09/2016 00:22:18:
Je weet dat na 9998 inserts er een record gaat komen met id 9999?

Waarom dan niet $id = null



:-) Ja, dat is een restant uit de jaren 70-80 toen '9' en '99' e.d. standaard de 'afsluit' codes waren. Let wel, er waren nog geen knoppen, geen muis, alleen een toetsenbord. Ik zal het veranderen.... Bedankt!

Ward:
Graag voortaan bij code de [code][/code]-tags gebruiken.
Hier kun je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 19/09/2016 15:22:10 door Ward van der Put
 
Ward van der Put
Moderator

Ward van der Put

19/09/2016 15:25:10
Quote Anchor link
Het gaat fout zodra je dit met meer dan één client online doet:

1. Client A haalt de hoogste id op.
2. Client B voegt een record toe en verhoogt de id.
3. Client A werkt met een verouderde hoogste id.

Verder vraagt je query nu de gehele tabel op. Dit kun je beperken tot de id van de laatste record:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT id FROM naw ORDER BY id DESC LIMIT 1
Gewijzigd op 19/09/2016 15:26:58 door Ward van der Put
 
Ben van Velzen

Ben van Velzen

19/09/2016 16:07:09
Quote Anchor link
>> De functie getMaxID() is een OMWEG voor het FALENDE insert_id, de oorzaak van deze draad.
En dat terwijl de oorzaak gewoon ergens foutief gebruik is. Zoals gezegd: je gebruikt insert_id vlak na je INSERT query, bij UPDATE e.d. weet je het ID al, dus heb je dit niet nodig. Daarnaast zijn er *geen* omwegen voor insert_id, ja, hooguit binnen een transactie je complete table locken, inserten en *dan* opvragen. Maakt je applicatie wel retetraag uiteraard omdat je dan alle andere toegangen tot de table verbiedt. Kort gezegd: wat je doet werkt niet en kan ook niet werken.
 
Thomas van den Heuvel

Thomas van den Heuvel

20/09/2016 14:45:27
Quote Anchor link
TL;DR Het nummertjesapparaat van MySQL zelf werkt goed zat, bouw hier geen eigen apparaat voor.

getMaxID() lijkt mij niet de juiste weg. Jouw database heeft zelf oneindig veel betere functionaliteit om zelf te bepalen welk auto-increment id deze moet toewijzen aan een nieuw record.

En wat @Ward zegt: op het moment dat twee verschillende gebruikers "tegelijkertijd" iets met getMaxID() doen ben je nat. Tenzij je doet wat @Ben voorstelt: iets met transacties, maar dat is voortborduren op een verkeerde ontwerpbeslissing.
 
Paul Ulje

Paul Ulje

21/09/2016 15:08:59
Quote Anchor link
Helemaal met je eens Thomas.
Uiteraard maak ik graag gebruik van MySql A_I en dat werkt probleemloos.

Mijn programma is een eeuwenoud privé programma, waarschijnlijk heb ik het oorspronkelijk in dBase en vervolgens in Clipper gemaakt. Na de omzetting in PHP, vermoedelijk om PHP 'te proeven' jarenlang over het Web ongestoord gebruikt.

Nu wil ik alleen direct na het TOEgevoegen het 'id'-nummer dat automagisch is toegevoegd gebruiken (uitlezen, niet toevoegen). En dat lukt me niet met insert_id.

Dan maar eromheen.
Er is (bijna) altijd een omweg.
In dit geval eigenlijk heel eenvoudig.
(Vroeguh, toen er nog geen DB voor de voor-PC was, moesten we altijd zelf een 'nummertjesapparaat' bouwen).
Maar terecht gezegd: niet elegant.
En elegantie (Pascal!) is voor mij belangrijk. :-(
In de beginjaren van IBM/MSDos deed ik overigens weinig anders dan omwegen verzinnen voor de gebreken.

Een ieder hartelijk bedankt voor de goede raad en steun!
Ik voel me helemaal thuis in dit forum.
Nu snel een nieuw PHP probleem zoeken.... :-)
 
Willem vp

Willem vp

21/09/2016 15:51:01
Quote Anchor link
Paul Ulje op 21/09/2016 15:08:59:
Dan maar eromheen.
Er is (bijna) altijd een omweg.
In dit geval eigenlijk heel eenvoudig.

Inderdaad eenvoudig: SELECT LAST_INSERT_ID(). Maar absoluut niet "select * [...] order by id desc" want vroeg of laat ga je daarmee een keer de bietenbrug op. En het erge is dat je dat vaak nog niet eens merkt tot het te laat is om de boel te herstellen. Het enige wat je dan nog kan doen is je hele database weggooien en overnieuw beginnen.
Gewijzigd op 21/09/2016 15:51:23 door Willem vp
 
Ben van Velzen

Ben van Velzen

21/09/2016 18:13:40
Quote Anchor link
Er is bijna altijd een omweg, correct. Maar die omweg hangt wel af van je begrip van waar je mee werkt. Een oplossing zoals je probeerde duidt duidelijk op een onbegrip, gezien de race conditions die je daar altijd mee veroorzaakt. Je kunt dan de omweg van Willem beter gebruiken, of zoals eerder gezegd je code herzien zodat je alleen het id uit de database vraagt bij een insert.
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.