insert_id

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Belastingdienst - Freelance Senior Applicatie ontw

Startdatum: 01.06.2023 Richttarief: €65,00 - €75,00 Duur van de opdracht: 6 maanden Uren per week: 36 Taal: Nederlands vereist! Gelieve in het Nederlands te solliciteren. Functieomschrijving: We verwachten van je, dat je: Brede ervaring hebt als JAVA-ontwikkelaar; Ervaring hebt met Agile/Scrum-werken en je thuis voelt in een Agile omgeving; Een aandeel levert aan het scrumproces en in de SAFe-releasetrain; Zelfstandig werkt in een scrumteam en intensief de samenwerking op zoekt met je directe collega’s en je omgeving; Ervaring meebrengt met het schattten en inplannen van taken tot en met het testen en demonstreren van de opgeleverde functionaliteit; Collega’s in je

Bekijk vacature »

Java Front-end Developer

Dit ga je doen Ontwikkelen van nieuwe functionaliteiten in Java met tools als Springboot, MS SQL Server (T-SQL) en JavaScript; Het onderhouden van de (web-)applicaties binnen een complexe omgeving; Werken aan de migratie van een monolithisch systeem naar een architectuur gebaseerd op Kubernetes; Code reviews met collega's en actieve kennisuitdelingsessies voeren; Het uitvoeren van unit- en systeemtests Experimenteren met nieuwe tools en technieken. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen

Bekijk vacature »

Software ontwikkelaar ASP .Net / C#

Functie omschrijving Gezocht! Software ontwikkelaar. Ben jij bekend met termen als ASP .Net, C# en SQL? Ben jij op zoek naar een afwisselende en uitdagende IT-functie binnen de agrarische sector? En omschrijf jij jezelf als zelfstandig, enthousiast en proactief? Dan hebben wij de perfecte functie voor jou! Als Software ontwikkelaar binnen deze organisatie ben je samen met één andere collega verantwoordelijk voor de ontwikkeling en modificatie van het support en controle programma dat binnen dit bedrijf gebruikt wordt. Je gaat hierbij bijdragen aan de vertaling van klantwensen naar effectieve softwareoplossingen. Verder bestaan je werkzaamheden uit: Technische uitwerking van de business

Bekijk vacature »

Senior SQR Java Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 13333 Introductie Are you passionate about contributing to the world's most advanced machines. Do you thrive in a challenging environment working with highly motivated and skilled teams? If so, we have the perfect opportunity for you! We are seeking a Senior Software Design Engineer for Sequence Tooling to play a critical role in creating and maintaining mission-critical software applications. In this role, you will focus on achieving maintainable software architecture that is transparent and easy to extend while maintaining a strong focus on software quality. You will work closely with

Bekijk vacature »

Front-end React developer

Functie Het frontend team bestaat momenteel uit 4 dedicated front-enders en is hard aan het groeien! Ook werken er diverse designers waar je veel mee schakelt. Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren, jij bent hierin de schakel tussen de eindgebruiker en de slimme backend. Je werkt in het frontend team samen met de backend teams en product owners om te zorgen dat onze applicaties een fijne gebruikerservaring opleveren. Ze werken o.a. met: React, Atomic design, Styled components, JavaScript / TypeScript, NPM, Webpack Blade templates, HTML, SCSS, Git flow. Eisen • HBO

Bekijk vacature »

Typescript Developer / Cloud platform

Dit ga je doen (Door)Ontwikkelen van het cloud platform; (Door)Ontwikkelen van microservices; Bouwen van nieuwe functionaliteiten; Verbeteringen aandragen voor het cloud platform; Sparren met de business. Hier ga je werken Onze opdrachtgever, gevestigd in regio Eindhoven, levert een compleet dienstenpakket op het gebied van IT. Zij pakken verschillende (complexe) vraagstukken van grote organisaties op. De sfeer intern is gezellig en informeel. Men houdt van hard werken maar gezelligheid door middel van een borrel of gezamenlijke lunch komt er veel voor. Als Typescript ontwikkelaar word je onderdeel van het team gericht op de (door)ontwikkeling van hun eigen cloud platform welke wordt

Bekijk vacature »

PHP Developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Oracle Apex Developer

Dit ga je doen Jouw taken bestaan uit: Het bouwen maatwerk Oracle applicaties voor Europese business units; Het implementeren van de nieuwste technieken om te blijven innoveren; Actief meedenken en aandragen van verbetervoorstellen. Hier ga je werken Deze organisatie in de regio Veenendaal is een van wereld grootste retailers met ruim 16.000 winkels in 27 markten en jaarlijks ruim 5,3 miljard klanten die winkelen bij een van hun welbekende retailmerken. Binnen de organisatie is er een IT Group actief die dient als IT Service Provider voor de hele organisatie en waar dagelijks IT'ers werken aan state-of-the-art IT oplossingen. Dit doen

Bekijk vacature »

Software Ontwikkelaar

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

React developer Inhouse cloudplatform

Functie De functie: Als front-end developer kom je te werken naast 2 andere front-end/React developers, waaronder één senior. Een hele mooie kans dus om in korte tijd veel nieuwe kennis en ervaring op te doen. Ze hebben momenteel veel werk hierin en daarom willen ze het team graag uitbreiden. Het is van belang dat je, zeker gezien het vele thuiswerken, in ieder geval al een aantal projecten hebt gedaan in React. Taken waar je aan kunt denken zijn het ontwikkelen van client-applicaties o.b.v. HTML5, React en andere open standaarden. Ook ben je nauw betrokken bij het implementeren van designs o.b.v.

Bekijk vacature »

Ervaren PHP developer gezocht!

Functie Het team bestaat inmiddels uit zo’n 25 collega’s met specialisten op het gebied van development, data(analyse), marketing, infrastructuur en finance. Ze hebben een supermodern pand en bieden hiernaast veel vrijheid en verantwoordelijkheid. Ze doen er alles aan om jou op te gemak te stellen. Zo kun je je eigen werkplek inrichten naar persoonlijke wensen, maar gaan ze bijvoorbeeld ook jaarlijks met elkaar wintersporten en zijn er andere leuke uitjes. Als onderdeel van één van de scrumteams ga je aan de slag, samen ben je medeverantwoordelijk voor het doorontwikkelen van hun business applicatie waar het traffic team dagelijks mee werkt.

Bekijk vacature »

Junior PHP ontwikkelaar

Functie Wij hebben onlangs onze eerste collega’s aangenomen, waardoor ons development team momenteel uit 4 personen bestaat. We bouwen onze software op basis van een PHP-framework (wat op zichzelf een Symfony framework is). Qua ontwikkeling focussen wij ons op 3 focus velden; – API-ontwikkeling/ Component Creatie – Implementatie – Framework ontwikkeling; het toevoegen van nieuwe functionaliteit of interne microservices Onze senior software engineer focust zich momenteel op de laatste twee punten, maar wij komen handen te kort op het eerste veld. Daarom zijn wij op zoek naar een enthousiaste junior software engineer die graag de kneepjes van het vak wil

Bekijk vacature »

Medior/senior front end developer

Functie Vanwege de groei binnen het bedrijf zijn we op zoek naar versterking in het development team. Als back-end developer bouw je aan de bedrijfssoftware die ons helpt bij de primaire processen. Een leuk (intern) project dus waarbij je de software continu doorontwikkeld! Je werkt in een klein team, we hebben dagelijks stand-ups en iedere twee weken een scrum-sessie, begeleid door onze Scrum Master. Hierin krijg je uitgebreid de kans om je ideeën te presenteren, en te overleggen met je mede-ontwikkelaars en de Product Owner. Binnen de ontwikkelteams gebruiken we Trello, Gitlab, Jiira, Confluence en Boockstack. Hiernaast werken ze met

Bekijk vacature »

Junior Front end developer Onderwijssoftware

Functie Als Junior front end developer kom jij terecht in een klein, maar hecht team bestaande uit 5 andere developers (waarvan 2 senioren, 2 medior en 1 junior). Met de gezamenlijke missie om “ieder kind te helpen met onze software” wordt er dagelijks gepassioneerd en hard gewerkt aan ons in-house ontwikkeld platform. Deze software is gebaseerd is op AI, machine Learning en wetenschappelijke inzichten. Dagelijks zul jij werken met onze high traffic webapplicatie. We hebben ruim 300.00 gebruikers en meer dan 2 miljard records waar je te maken mee krijgt! Verder zul jij je bezighouden met: – Het ontwikkelen van

Bekijk vacature »

Back End Developer

Als Back End developer bij KUBUS houd je je bezig met het ontwikkelen van de (web)applicatie en services van BIMcollab. Je hebt een focus op de back end van onze software, daarvoor werken wij hoofdzakelijk met C# en .NET. Wij hanteren een full-stack benadering, wat betekent dat je naast de back-end ook meehelpt bij andere onderdelen van de code. Als softwarebedrijf bevindt KUBUS zich in een unieke positie. We bouwen aan onze eigen producten die wereldwijd door tienduizenden gebruikers worden gebruikt. Ons bedrijf heeft precies de juiste grootte: groot genoeg om echt impact te maken in de markt, maar klein

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

02/01/2025 14:17:03
 
- 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.