PDO inTransaction (MySQL)

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Software Engineer C++ / Software Developer C++

Software Engineer C++ / Software Developer C++ (Bsc, MSc, Computer Science, Information Technology, Mathematics, C, C++, Linux, Algorithms) General Do you find great joy in software development, which is then used worldwide, and are you familiar with C++ and with algorithms… read on! Organization For our business client, a fast dynamic technical company which gathers and processes huge amounts of data, we are looking for several Software Engineers. You will be part of a team consisting of about 25 software developers working on a suit of advanced software tools. These software tools are then used further on in the company

Bekijk vacature »

Senior fullstack .NET developer

Wil jij samen met gemotiveerde en slimme collega’s bouwen aan ons geavanceerde landschap in Azure? En vind je het ook nog eens leuk om jouw kennis te delen met junior- en medior devs? Dan heb je wellicht interesse in de positie van: Senior fullstack .NET developer voor ons kantoor in Alkmaar Over de positie: Bij SnelStart werken we in een AGILE-structuur om de productie meer focus en impact te geven. Met je collega’s kom je tot de beste resultaten door onderlinge discussie, goede refinement sessies, reviews en écht teamwork. Je hebt de vrijheid om de dingen te doen zoals jij

Bekijk vacature »

Backend .NET Developer C# Voetbal

Bedrijfsomschrijving Binnen deze organisatie in de regio Den Haag zal je als .NET Developer terecht komen in een multidisciplinair team met 5 andere Programmeurs. In jouw rol ben je verantwoordelijk voor het ontwikkelen en optimaliseren van mobiele applicaties met meer dan 4 miljoen gebruikers wereldwijd. Als Backend Developer zal je dagelijks werken met C#, .NET Core, Kubernetes en een SQL Database. Voor het onderling communiceren van de microservices wordt gebruik gemaakt van RabbitMQ. Je krijgt energie van technische uitdagingen en je werkt graag samen. Verder zul je in vele projecten deelnemen, zorg je voor nieuwe features, los je diverse bugs

Bekijk vacature »

BI/SQL developer met uitstekende voorwaarden!

Bedrijfsomschrijving Mijn klant is een financiële dienstverlener gevestigd in Amersfoort. Ze hebben vestigingen in diverse landen en er werken momenteel ruim 500 mensen wereldwijd. Ze bieden een breed divers dienstenpakket aan. De afdeling waarin jij komt te werken bestaat uit 5 SQL-server/Business Intelligence specialisten. Het betreft een interne functie op een vaste werklocatie in een fijne omgeving. Tevens zijn de arbeidsvoorwaarden binnen deze organisatie uitstekend te noemen. Waaronder een vaste 13e maand. Functieomschrijving Mijn klant is op zoek naar een ervaren SQL-server database ontwikkelaar, met bij voorkeur kennis van Microsoft Business Intelligence tooling. Het team waarin je werkzaam wordt bestaat

Bekijk vacature »

.NET developer

Heb jij een afgeronde Hbo-opleiding, bij voorkeur in richting van informatica? En heb jij kennis van het .NET framework? Dan heb je wellicht interesse in de positie van: .NET software developer in Hollandscheveld Optioneel 100% vanuit huis Over de positie: Als .NET developer ben jij verantwoordelijk voor het omzetten van onze eigen web portal en die van afnemers. Jouw taken omvatten, maar zijn niet gelimiteerd tot: het omzetten van PHP en ASP.NET naar .NET Core; het aanpassen en uitbreiden van onze web app (.NET Core) qua opzet en functionaliteit; onze desktop versie van Micromix (VB.NET) ondersteunen en verder te ontwikkelen;

Bekijk vacature »

C# .Net ontwikkelaar - Meer dan €4000 p/m + L

Bedrijfsomschrijving Deze informele organisatie heeft ontzettend veel contacten binnen grote en bekende organisaties. Dit zorgt ervoor dat jij als .Net ontwikkelaar op leuke en uitdagende projecten komt te werken, hierbij zal de focus vooral liggen op het midden van het land. Veel ontwikkelaars zijn via onze opdrachtgever aan het werk bij bijvoorbeeld grote financiële dienstverleners maar het is niet geheel ongebruikelijk om bij kleinere instanties aan het werk te gaan. Bij onze opdrachtgever ligt er veel focus op de persoonlijke ontwikkeling en groei van hun medewerkers. Je krijgt daarom veel ruimte om certificaten te behalen die belangrijk zijn voor jouw

Bekijk vacature »

Technical Support Engineer (Netherlands)

Experlogix is looking for a technical resource with experience in web server and cloud platform technologies to join our Technical Support Team in the Netherlands and provide responsive technical guidance and support to our customers worldwide. You will leverage your excellent technical skills and expertise with your excellent custom service and communication skills to provide timely and knowledgeable technical support. If you are looking for a great career opportunity to specialize in state-of-the-art software products for an international company, we want to hear from you! Job description As a Technical Support Engineer, you will provide technical guidance and support to

Bekijk vacature »

Front-end Developer Aurelia

Bedrijfsomschrijving Als Front-end developer kom je te werken bij een gerenommeerde organisatie in de regio Ede waar gewerkt wordt aan een bedrijfskritische applicatie dat opereert binnen een complexe IoT- en web based omgeving. Deze oplossingen worden internationaal uitgerold en worden zeer veel gebruikt in de infra branche. Samen met je team (bestaande uit twee testers, zes ontwikkelaars een Scrum Master en Product Owner) ga jij werken aan de nieuwe webapplicatie dat aan duizenden machines en voertuigen gekoppeld wordt. Deze applicatie wordt gebruikt door onder andere rijksoverheden, vliegvelden maar ook binnen industrie-, lokale- en provinciale gebieden in zowel binnen als buitenland.

Bekijk vacature »

C# developer gezocht met affiniteit voor machines

Voor een bedrijf in de regio Den Haag zijn we momenteel op zoek naar een .NET developer met affiniteit voor de techniek. De organisatie richt zich op het fabriceren van technische apparatuur die gebruikt wordt door industriële bedrijven. Ondanks dat software een steeds belangrijkere rol speelt binnen de organisatie en bij hun producten, bestaat de core business uit het bouwen van machines. Het is dan ook geen functie waarbij je 8 uur per dag achter je PC zal zitten om alleen te programmeren. Naast het programmeren van nieuwe onderdelen van hun administratieve systeem zal je namelijk een groot deel van

Bekijk vacature »

Junior of medior full-stack C# developer gezocht,

Ben je een startende software developer of iemand die wellicht al iets meer ervaring heeft? En ben je op zoek naar een baan als C# developer in Rotterdam (vlakbij Rotterdam centraal)? Bij een kleine platte organisatie met korte lijnen en een professionele en ongedwongen sfeer? Waarbij gebruiksvriendelijkheid een belangrijk uitgangspunt is bij het bouwen van hun software? Voor een bedrijf in Rotterdam zijn we momenteel op zoek naar een junior of medior C# developer. Het bedrijf richt zich op de ontwikkeling van software voor productiebedrijven. Hun software stelt deze bedrijven in staat sneller te verbeteren. Dit doen ze door bekende

Bekijk vacature »

Junior Developer Fullstack Java DevOps Cloud

Bedrijfsomschrijving Onze klant is een grote organisatie en is actief in de financiële sector. Binnen Europa bieden zij veel verschillende producten en diensten aan. De afdeling waar je komt te werken richt zich op het digitaliseren van primaire digitale processen. Wat digitale processen betreft lopen wij in Nederland ver voor op andere landen in Europa! Deze services wil de organisatie ook aanbieden aan hun collega’s en klanten in landen zoals België, Frankrijk en Duitsland. Jij en je team zijn verantwoordelijk voor de digitalisatie van de primaire processen en deze vervolgens te optimaliseren & automatiseren. Binnen het team zal je end-to-end

Bekijk vacature »

C/C++ Developer

Bedrijfsomschrijving Als Software ontwikkelaar C/C++ kom je te werken bij een toonaangevende organisatie in de mobiliteitsbranche die door het produceren van slimme producten Nederland steeds leefbaarder maakt! Ze ontwikkelen innovatieve producten die er onder andere voor zorgen dat de infrastructuur in Nederland op de snelste en meeste efficiënte manier kan worden geregeld. Als C/C++ ontwikkelaar kom je te werken op een afdeling met 40 collega's, bestaande uit Engineers, deskundigen en ontwikkelaars. Hiervoor werk je nauw samen in een team met ongeveer tien andere ontwikkelaars. Samen met het team pak je zelfstandig projecten op die doorgaans een doorlooptijd hebben van 4

Bekijk vacature »

Technisch Service Management Consultant

Technisch Consultant Service Management Ben jij klaar voor een nieuwe stap in je carrière? Vind je het leuk om binnen een klein team op internationaal niveau technische uitdagingen op te lossen voor onze klanten? Lees dan verder, want jij zou onze nieuwe collega kunnen worden! Wij zijn op zoek naar een Technisch Consultant gespecialiseerd in (IT) Service Management. Misschien ben je al een ervaren technisch adviseur, of heb je net je opleiding afgemaakt, of ben je op zoek naar een carrière switch? Het belangrijkste voor ons is je motivatie, je bereidheid om te leren en hoe je met onze klanten

Bekijk vacature »

.NET ontwikkelaar / Azure

Bedrijfsomschrijving Als onderdeel van een grote IT-dienstverlener is deze organisatie nu gegroeid tot een organisatie van bijna 30 man groot. Iedereen binnen deze organisatie houdt zich bezig met het ontwikkelen, beheren, onderhouden van bedrijfskritische applicaties. De organisatie ontwikkelt applicaties voor o.a. diverse grote zorgverzekeraars, maar ook de wat kleinere lokale bedrijven worden door deze organisatie ondersteund. In tegenstelling tot de moederorganisatie, werken de medewerkers bij deze organisatie gemiddeld drie tot vier dagen in de week gewoon op het eigen kantoor in Utrecht. Samen met een vast team ben je dus verantwoordelijk voor verschillende projecten die je veelal op één en

Bekijk vacature »

C# .NET Developer

Bedrijfsomschrijving Onze klant is een mooie en innovatieve multinational in de regio Utrecht. Ze staan bekend om de hoge kwaliteit van dienstverlening en streven ernaar dit continu te verbeteren. Om dit te kunnen doen zijn zij opzoek naar een Software Developer. Als C# .NET Developer ga je aan de slag met het ontwikkelen van bedrijf kritische software en applicaties. Zo zijn er applicaties en software die van belang zijn voor de bedrijfsvoering, de medewerkers van de organisatie, maar ook voor het klantenbestand van de organisatie. Het landschap is zowel functioneel als technisch en daarmee erg breed. Je komt te werken

Bekijk vacature »
Jens V

Jens V

17/01/2011 00:17:15
Quote Anchor link
Hoi allen,

Is er een manier om te weten of er een transaction op een bepaald database-object open staat als je MySQL gebruikt i.s.m. PDO? Ik gebruik InnoDB, dus transactions zijn ondersteund.
Gewijzigd op 17/01/2011 10:20:35 door Jens V
 
PHP hulp

PHP hulp

08/03/2021 03:33:38
 
Nicoow Unknown

Nicoow Unknown

17/01/2011 10:05:22
Quote Anchor link
Je hebt de functie:
isInTransaction(), maar ik weet niet of je die precies bedoelt.
 
Jens V

Jens V

17/01/2011 10:15:47
Quote Anchor link
Nog niet opgevallen dat ik daarnaar verwijs? ;) inTransaction: "Note that currently only the PostgreSQL driver implements this method."
 

17/01/2011 10:23:55
Quote Anchor link
Jens V op 17/01/2011 10:15:47:
Nog niet opgevallen dat ik daarnaar verwijs? ;) inTransaction: "Note that currently only the PostgreSQL driver implements this method."


Nee, dat is niet echt duidelijke verwijzing (btw, je kunt gewoon php links maken met de php tag).
Volgens mij ondersteund mysql dit niet echt (het is mysql he) dus misschien zelf wat maken, of overstappen op postgresql?
 
Jens V

Jens V

17/01/2011 10:27:10
Quote Anchor link
PostgreSQL heb ik al mee gewerkt, maar het spijtige daarin is dat maar weinig hosts het hebben... Ik kom het probleem nu pas tegen (in de catch heb ik een $db->rollBack(); staan want ik gebruik 1 grote try-catch block voor alle queries.), en om nu nog een wrapper voor rond de db klasse te schrijven is het wat laat.

Ik zou het idd wel kunnen oplossen door in die wrapper-klasse zelf een bool bij te houden die aangeeft of er een transaction open staat...


Karl Karl op 17/01/2011 10:23:55:
Nee, dat is niet echt duidelijke verwijzing (btw, je kunt gewoon php links maken met de php tag).

Ik dacht dat vanwege de exacte naam van die functie in de titel :) En van die php-links, ik wist niet of dat ook met die pdo-links gaat. -> testje: pdo.intransaction
Gewijzigd op 17/01/2011 10:29:48 door Jens V
 
Pim -

Pim -

17/01/2011 13:27:31
Quote Anchor link
Quote:
en om nu nog een wrapper voor rond de db klasse te schrijven is het wat laat.

Dependecy injection ;)
 
Jens V

Jens V

17/01/2011 13:31:17
Quote Anchor link
Que? :D Voorbeeldje?
 
Pim -

Pim -

17/01/2011 14:22:58
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
class IndexController extends Controller
{
    protected $db;

    // het 'injecteren' van de 'dependency', de DB verbinding in dit geval
    public function setDb(PDO $db)
    {

        $this->db = $db;
    }


    public function indexAction()
    {

        $items = $this->db->query('QUERY')->fetchAll();
        return $this->view->render('index', $items);
    }
}

?>

Gewoon een willekeurige controller.

Wanneer je nu wat toe wil voegen aan PDO doe je gewoon zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
class Database extends PDO
{
    // Wat extras
}

$controller = new Controller;

//eerst
$controller->setDb(new PDO);

//nu
$controller->setDb(new Database);
?>
 
Jens V

Jens V

17/01/2011 14:29:07
Quote Anchor link
Dus wat ik eigenlijk nodig heb, die 'wrapper'-klasse, is niet meer dan dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
class Database extends PDO
{
    private $in_transaction = false;

    public startTransaction()
    {

        $this->in_transaction = true;
        return $this->beginTransaction();
    }

    public inTransaction()
    {

        return $this->in_transaction;
    }


    // en ook zo voor commit en rollback
}
?>


Is er een manier dat ik die startTransaction kan beginTransaction noemen? Dus effectief die functie 'overschrijven', maar binnen in toch nog de originele aanroepen?
 
Jelmer -

Jelmer -

17/01/2011 14:42:22
Quote Anchor link
Jep, met parent.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php

class Database extends PDO
{
    public function beginTransaction()
    {

        $this->in_transaction = true;
        
        return parent::beginTransaction();
    }
}

?>
 
Jens V

Jens V

17/01/2011 14:43:40
Quote Anchor link
Super:) Zo een klasse is er dan wel snel tussen gezet:)
 
Nicoow Unknown

Nicoow Unknown

17/01/2011 15:08:07
Quote Anchor link
Maar hoe controleer je nu of hij klaar is met de transaction, want dat is volgens mij het belangrijkste, anders zit je na 1 keer na het beginnen van een transaction altijd vast in die transactie.
Correct me if i'm wrong
 
Jens V

Jens V

17/01/2011 15:09:23
Quote Anchor link
In die commit en rollBack gewoon $this->in_transaction terug op false zetten?
 
Pim -

Pim -

17/01/2011 15:14:51
 
Nicoow Unknown

Nicoow Unknown

17/01/2011 15:50:14
Quote Anchor link
Ik denk niet dat je mag zeggen dat hij "uit" de transaction is zodra je commit uitvoert.
Dit is namelijk een status vanuit je DB, en hetgeen wat die transaction doet is eigenlijk een que opbouwen in je database, om die vervolgens uit te voeren, (als ik het goed heb).
Maar ik weet de exacte werking van RollBack niet,maar dat moet je dan wel goed onderzoeken voordat je simpelweg die veronderstelling aanneemt
 
Jens V

Jens V

17/01/2011 16:16:19
Quote Anchor link
Zit misschien wel iets in, ja. En als ik nu de commit uitvoer en wacht op het resultaat (true of false) en dat resultaat dan aan de in_transaction geeft? Ik denk niet dat het dan nog mis kan zijn hoor?
 



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.