Relatie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ontwikkelaar Identity & Access Management

Dit ga je doen Als Identity & Access Management Ontwikkelaar zorg jij er voor dat studenten, medewerkers en docenten de juiste benodigdheden op het juiste moment kunnen gebruiken; Het juist opslaan van onderzoeksdata en het openbaar beschikbaar stellen van publicaties (Open Access); Studenten, collega's en wetenschappers ondersteunen; Agile en Scrum werken; Technisch Applicatiebeheer; Ontwikkelen in One Identity Manager en VB.NET. Hier ga je werken Als Ontwikkelaar kom je terecht in een hecht team die zich richt op wetenschappelijke informatie en ICT. Jij bent degene die er voor zorgt dat alle informatie, uit diverse onderzoeken, bij de juiste personen terecht komt.

Bekijk vacature »

Medior PHP Developer

Bij Getnoticed doen wij wat we leuk vinden, websites bouwen en online marketing. Voor veel van onze klanten doen we dan ook allebei. Wel zo fijn om campagnes te draaien voor conversiegerichte website die in eigen beheer zijn. In onze vestiging in Nederweert zitten onze development afdelingen en worden de websites gebouwd. Op dit moment zijn we op zoek naar jou: dé PHP/Back-end developer die net als wij, het hoofd boven het maaiveld durft uit te steken! In het kort Even een paar punten die omschrijven wat deze toffe baan inhoudt: Het bedenken van nieuwe functionaliteiten Het verbeteren van het

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 »

Functioneel Applicatiebeheerder

Wij van CNB zijn op zoek naar een leergierige Functioneel Applicatiebeheerder CNB is de grootste dienstverlener in de markt van bloembollen en vaste planten. In deze markt verricht CNB de volgende diensten: bemiddeling, veilen en het koelen en prepareren van bloembollen. Vanuit ons hoofdkantoor in Lisse werken bijna 100 collega’s dag in dag uit aan de bemiddeling van bloembollen. In Bovenkarspel vindt het koelen en prepareren van de bloembollen plaats. Wij zijn op zoek naar een enthousiaste Functioneel Applicatiebeheerder die naast een applicatie, ook sfeer kan bouwen! Jij: Vindt het leuk om binnen een klein IT-team aan de slag te

Bekijk vacature »

Developer Angular & Kotlin

Dit ga je doen Het (door)ontwikkelen van mobiele apps en webapplicaties; Het opstellen van technisch ontwerp en het bespreken van ontwerpen met de software architect; Het uitvoeren van werkzaamheden op het gebied van technisch testen; Het in de gaten houden van nieuwe ontwikkelingen op jouw vakgebied en het adviseren van de organisatie hierover. Hier ga je werken Het gaat om een bekend internationaal handelsbedrijf met ruim 800 medewerkers, verdeeld over verschillende deelbedrijven. Deze organisatie is van oorsprong een familiebedrijf, er wordt hard gewerkt, er heerst een no nonsense en doeners mentaliteit, een informele sfeer en er is een mix van

Bekijk vacature »

.NET Developer C# VB

Samengevat: Deze werkgever is actief in software voor het matchen van vraag en aanbod van gebruikte auto-onderdelen. Ben jij een .NET Developer? Heb je ervaring met het ontwikkelen (REST) en integreren van webservices? Vaste baan: C# .NET Developer C# VB HBO €2.600 - €6.200 Wij ontwikkelen software om vraag en aanbod van onderdelen van personenauto's bij elkaar te brengen. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. De branche van dit bedrijf is Automotive. Functie: Voor de vacature als .NET Developer Dordrecht HBO ga je

Bekijk vacature »

.NET Developer

Functieomschrijving Ben jij klaar voor de volgende stap in jouw carrière? Kom werken bij dit kleine softwarebureau en werk aan de gaafste maatwerk projecten. Je komt te werken in een klein development team en werk nauw samen met elkaar, om maatwerk software te leveren en bij te dragen aan bedrijfsautomatiseringen. Je gaat werken met de Microsoft stack en technieken als .NET, C#, Entity, MVC, SQL server. In de functie krijg je veel vrijheid om zelf beslissingen te nemen en je hebt impact op de bedrijfsprocessen. Bedrijfsprofiel Dit familiebedrijf bestaat al ruim 20 jaar. Zij hebben een vast netwerk van klanten,

Bekijk vacature »

SQL Developer

Functie omschrijving Altijd al willen werken bij een snelgroeiend bedrijf, actief in de logistieke sector? Dit is je kans! Ik ben op zoek naar een ervaren SQL Developer in de omgeving Tilburg. Dit bedrijf is gespecialiseerd in in de ontwikkeling van software en maatwerk oplossingen voor het automatiseren van logistieke processen. Klanten zijn o.a. BOL en andere grote distributiecentrums. Jouw taken worden vooral: Verantwoordelijk voor ontwikkelen van stored procedures, voor snelle afhandeling van data; Optimalisatie van de SQL query's en T-SQL query's; Jij gaat je bezig houden met ontwerpen, ontwikkelen en optimaliseren van de MS SQL Databases; In deze functie

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

.NET developer

Functie Als .NET developer wordt jij onderdeel van ons ICT team. In dit multidisciplinaire team ben jij samen met onze senior .NET ontwikkelaar en medior .NET ontwikkelaar verantwoordelijk voor ons ERP systeem. In dit systeem (Navision) ga jij leren ontwikkelen. Wij bieden jou dan ook een gedegen opleiding aan, samen met de ondersteuning van onze Senior .NET developer. Daarnaast ga jij aan de slag met ons portaal geschreven in Sharepoint. Verder ben jij verantwoordelijk voor EDI verkeer en het ontwikkelen binnen het ERP systeem en andere toepassingen en rapportages. Van jou wordt verwacht dat jij het proces goed leert kennen

Bekijk vacature »

Delphi Programmeur

Functie omschrijving Onze opdrachtgever is gespecialiseerd in kantoor-bedrijfssoftware en zit gevestigd in omgeving Numansdorp. Als programmeur ben jij bij dit bedrijf met het volgende bezig; Je vertaalt technische en functionele ontwerpen naar kwalitatieve software. Je ontwikkelt, ontwerpt en test software. Je maakt daarbij veel gebruik met de volgende tools & technologieën: Delphi 10.3 (Rio), QuickReport 6. Je krijgt in deze rol veel vrijheid en verantwoordelijkheid. Je levert projecten van A - Z op, en werkt daarbij projectmatig en gestructureerd. Bedrijfsprofiel Dit bedrijf richt zich op maatwerk software oplossingen. Deze software oplossingen worden ingezet in de financiële branche. Het betreft een

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET ontwikkelaar start jij in ons development team met twee andere .NET developers. Als team werken jullie in scrum en is er iedere ochtend om 11.00 een standup. Jij krijgt als junior .NET ontwikkelaar een inwerk traject dat echt specifiek wordt ingericht op basis van wat jij nodig hebt. Een van de grootste pluspunten bij ons is dat wij binnen ons bedrijf veel (technische) vrijheid geven en juist eigen initiatieven erg stimuleren. Jouw werkzaamheden gaan er bij ons als volgt uit zien: – Het ontwikkelen van nieuwe software samen met interne en eventueel externe ontwikkelaars; – Het

Bekijk vacature »

PHP ontwikkelaar

Functie Met een complex en uitgebreid e-commerce platform, een eigen PIM-systeem en eigen scan applicatie – krijg jij dagelijks te zien hoe jouw werk gebruikt wordt door miljoenen gebruikers. En we staan qua development pas in de startblokken, aangezien er nog meerdere projecten op de plank liggen te wachten! Ons huidige development team bestaat uit 8 programmeurs. Er wordt dagelijks gereflecteerd op geschreven code, Scrum taken en kennisdelen onderling is een must. Onze voertaal binnen ons team is Engels, dit omdat wij twee internationale collega’s hebben. Ons huidige “IT Landschap” bestaat voornamelijk uit allerlei losse onderdelen die individueel, maar ook

Bekijk vacature »

Randstad B.V.- Freelance Senior Fullstack Develope

Startdatum: 01.05.2023 Richttarief: € 75,00 - €85,00 Duur van de opdracht: 1 jaar Uren per week: 40 Werkmodel: Hybride, dinsdag en donderdag aanwezig op kantoor in Diemen en meer wanneer dit nodig is. Functieomschrijving: De ideale kandidaat gaat onderdeel uitmaken van een junior team binnen het foundation domein. Vanuit het foundation domein werkt dit team samen met andere foundation teams en teams uit het online domein (professionals B2B en B2C) voor het bouwen en integreren van HRM functionaliteiten (verlof en benefits) in de persoonlijke portal van Interim Professionals. Er is meer backend werk dan frontend, maar kandidaat moet beiden leuk

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 »
Zero XT

Zero XT

16/09/2009 11:04:00
Quote Anchor link
Beste php-ers,

Ik heb een database met daarin 3 tabellen


Tabel gebruikers:
ID (int 11)

Tabel forum_berichten
gebruiker_id (int 11)

Tabel ban
gebruiker_id (int 11)


Nu wil ik graag dat als een gebruiker word verwijderd uit de tabel gebruikers deze automatisch ook word verwijderd in de tabel forum_berichten en ban.

Nu moet ik dus foreign keys gebruiken alleen ik krijg het voor elkaar om een relatie te leggen tussen 2 tabellen (dus een 1 op 1 relatie) maar ik krijg het niet voor elkaar om een 1 op meer relatie te leggen

Dit is wat ik gebruikte om de 1 op 1 relatie te maken

ALTER gebruikers ADD FOREIGN KEY(ID) REFERENCES forum_berichten(gebruiker_id) ON DELETE CASCADE


Hoe krijg ik het nu voor elkaar dat als ik de gebruiker verwijder uit de gebruiker tabel hij alle child records ook verwijderd (dus in forum_berichten en ban) ?
 
PHP hulp

PHP hulp

01/06/2024 22:06:23
 
Robert Deiman

Robert Deiman

16/09/2009 11:45:00
Quote Anchor link
@HellRazer

Whooo, stop!

Even controleren of ik het goed snap, als jij een gebruiker banned/ of verwijderd, dat alle posts weg zijn? En wat nou als die gebruiker nuttige posts heeft gedaan in het verleden en de boel nu loopt te verzieken?

Je wilt natuurlijk alleen zijn "verziekposts" en "verziektopics" wissen, niet al zijn reacties. Daar kan (ligt misschien ook aan het forumgebruik) iemand anders nog weer wat aan hebben. Posts zou ik dan ook niet zomaar verwijderen met de gebruiker, en ik zou de gebruiker ook niet verwijderen. Misschien op non-actief zetten, dat het "lijkt alsof die gewist is" maar je hebt dan de gegevens nog wel in elk geval.

Misschien kan je even toelichten waarom je dit eigenlijk zo wil, volgens mij moet er een slimmere oplossing zijn.
 
Zero XT

Zero XT

16/09/2009 15:28:00
Quote Anchor link
Bedankt voor je reactie Robert alleen wat ik noemde als tabellen waren alleen maar als voorbeeld. Ik ben daar dus niet duidelijk genoeg in geweest, mijn excuses.

Wat ik simpel wil is dat wanneer je een gebruiker verwijderd dat ook alle referenties worden verwijderd of op null word gezet.

Ik sta ook niet toe door wie dan ook om een gebruiker te verwijderen. Maar bij andere dingen is het wel handig.

Hier een voorbeeld die ik wel wil implementeren:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
Tabel forum_topics
- ID (int)

Tabel forum_berichten:
- forum_berichten_id (int)
- forum_topic_id (int)

Tabel forum_gelezen
- forum_topic_id


Hier zie je dat forum_topic_id uit forum_berichten en forum_topic_id uit forum_gelezen gelinkt zijn aan ID uit forum_topics. Op moment dat ik een topic verwijder moeten alle referenties dus ook verwijderd worden.

Dus in dit geval heb ik een 1 op meer relatie vanaf forum_topics(ID)

Hoe krijg ik dat voor elkaar?
 
Robert Deiman

Robert Deiman

16/09/2009 15:45:00
Quote Anchor link
Je relatie is dus dat een "forum_topic_id" voorkomt in de tabel forum_topics.
Volgens mij,ik doe dit uit mijn hoofd, zo geen webserver (ook niet lokaal) beschikbaar om te testen, (computer waarop ik normaal werk niet hier, dus ook wachtwoorden niet) moet je dus het volgende doen:
ALTER forum_berichten ADD FOREIGN KEY(forum_topic_id) REFERENCES forum_topics(ID) ON DELETE CASCADE

Misschien net andersom hoor, dan moet het zo:
ALTER forum_topics ADD FOREIGN KEY(ID) REFERENCES forum_berichten(forum_topic_id) ON DELETE CASCADE

Eenzelfde soort relatie maak je aan tussen "Tabel forum_gelezen" en tabel topics. Moet opzich geen problemen opleveren.

Dan nog even een kanttekening: Ook hier geld dat verwijderen niet een ideale oplossing is. Je kan net zo goed een topic op non-actief zetten, vanuit deze instelling het topic niet meer weergeven in de topiclijst. Maar heb ik hem in de favorieten staan, kan ik het topic in elk geval nog weer terugzoeken.
Daarbij als je ook nog op wilt slaan hoeveel posts, welke posts, post-historie enzovoorts, dan mag je al helemaal geen gegevens weggooien (is geen aanrader).
Als je de juiste indexes aanmaakt en dus topic op actief/ inactief zet, is het één en ander heel eenvoudig te realiseren. + je raakt zo nooit wat kwijt en kan altijd de boel weer terugzoeken.
 
Nicoow Unknown

Nicoow Unknown

16/09/2009 15:45:00
Quote Anchor link
Ik heb eerlijk waar geen idee wat nou precies je bedoeling is.
Leg anders even aan de hand van een voorbeeld uit, wat de situatie nu is,
en hoe die zou moeten worden.
 
Robert Deiman

Robert Deiman

16/09/2009 15:55:00
Quote Anchor link
@nico
Onder zijn tabellen opzet staat wel uitgelegd dat hij met die tabellen wanneer een topic wordt gewist, ook alle referenties aan/ naar dat topic wil verwijderen met ON DELETE CASCADE.
 
Zero XT

Zero XT

16/09/2009 23:12:00
Quote Anchor link
Hartelijk bedankt voor je reactie Robert. Ik heb het probleem inmiddels opgelost mede dankzij jouw hulp.
 
Robert Deiman

Robert Deiman

17/09/2009 08:30:00
Quote Anchor link
@HellRazer
Ik ben nog steeds wel benieuwd naar de precieze situatie eigenlijk, in de meeste gevallen is het praktischer om gegevens op "inactief" te zetten dan om ze echt te wissen.
 
Zero XT

Zero XT

17/09/2009 17:28:00
Quote Anchor link
Mocht er nu echt iets verwijderd worden uit de database dan wil ik dat alle childs ook meegaan. Of dit nu via een SET NULL of een CASCADE gaat doet er niet toe. Ik geef mensen op mijn website de mogelijkheid om berichten te verwijderen (waarna ze op non-actief worden gezet) Maar ik als Administrator krijg dan de keus of ik ze helemaal uit de database wil verwijderen.

Dit zou niet vaak voorkomen maar mocht het toch nog een keer voorkomen dat wil ik dat het ook geen sporen achterlaat.
 



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.