PDO of mysql_*?
ik heb het een en ander gelezen of pdo, en over mysql_* functies. nou vraag ik me af, wat is nu beter? wat is jullie mening daarover? en dan ook waarom, simpele gebruik deze - antwoorden heb ik niet zo veel aan voor een keuze
Altijd kiezen voor PDO als je server dat ondersteund. MySQL_* functies gaan eruit en worden vervangen door MySQLi of PDO en dan is PDO beter.
Waarom is PDO beter?
- Prepared statements ondersteuning, dit is veiliger en sneller
- Meerdere database type support, MySQL(i) supporten allen MySQL, PDO ook alle andere DB types als Oracle, MS SQL, enz.
- PDO is een klasse, geen functie lib. Dit maakt het veel krachtiger en zorgt voor betere implentatie mogelijkheden mocht je later OOP gaan leren.
- PDO gebruik exceptions als foutafhandeling, dit is de nieuwe manier van foutafhandeling
- PDO is gemaakt voor PHP5 en daarom modern en hij maakt gebruik van nieuwe methoden. MySQL is gemaakt voor PHP4 en daarmee al ouderwets.
- MySQL wordt standaard uitgeschakeld geleverd in nieuwe versies, hierdoor heb je de kans dan de mysql_* functies niet werken
Een goede tutorial om te beginnen met PDO: phptuts.nl/view/27/ Je topic titel is denk ik fout, dbo moet pdo zijn ;)
voor de rest heb ik dat ook aangepast ok bedankt! ik heb nu wamp geiinstalleerd, maar werkend krijg ik die niet. ik heb wat hier eerder stond verplaats naar een ander topic. omdat dit niet echt hier tussenpast.
Je loopt in mijn ogen appels met peren te vergelijken. @Wouter J, je voert drogredenen aan waarom PDO beter zal zijn dan de aanwezige pecl extension voor diverse databases.
Het is heel makkelijk om te zeggen dat iets niet goed is, maar zolang je daar geen onderbouwing voor kunt geven, heeft zo'n opmerking weinig of beter gezegd geen waarde. Probeer in de toekomst eens aan te geven waarom je iets vindt. Ik vind... omdat... dan heeft iedereen er wat aan. Alvast bedankt. Noppes, ik vind het interessant dat zodra het over PDO gaat jij altijd een negatief tegengeluid laat horen. Op zich is daar niks mis mee, maar ik zou graag eens conrete redenen van je horen waarom je je zo tegen PDO verzet.
Ik vind niks en hoef het niet te onderbouwen, het is denkstof voor degene die het leest. Er worden maar luk raak dingen beweert, waarschijnlijk omdat ze niet beter weten of nooit naar het andere gekeken hebben, - door derden - die niet gestaaft kunnen worden. @Ozzie, ik heb nergens geschreven dan wel beweert dat PDO niet goed is - hooguit dat bij de introductie het danig buggie was dat je het beter links kon laten liggen -, het probleem is echter dat het zo opgehemeld wordt terwijl er totaal geen voordeel aan te behalen valt door je specifiek te richten op PDO.
Ik werk ook met PDO en tot nog toe gaat het goed, maar alternatieven heb ik niet echt geprobeerd. Dus vandaar dat ik me afvraag waarom je de voorkeur geeft aan andere database(driver)s dan PDO. Ik heb zelf niet ervaren dat PDO buggy is.
"Ik vind niks en hoef het niet te onderbouwen, het is denkstof voor degene die het leest. Er worden maar luk raak dingen beweert, waarschijnlijk omdat ze niet beter weten of nooit naar het andere gekeken hebben, - door derden - die niet gestaaft kunnen worden."
Tuurlijk vind jij wel iets, anders zou je het niet zeggen. En soms worden er inderdaad lukraak dingen beweerd, maar juist dan is het van belang dat je aangeeft waarom die beweringen niet kloppen. Iets verkeerd onderbouwen heeft net zo weinig zin als iets helemaal niet onderbouwen. Ik hoop dat je begrijpt wat ik bedoel te zeggen. Top in ieder geval dat je even gereageerd hebt. Kijk Noppes... nu gaan we in discussie en zo hoort het.
Dit verkondig je namelijk al een hele tijd, maar NOOIT maar dan ook echt NOOIT kom jij met redenen waarom PDO slecht is. Ik heb MySQLi, MySQL en PDO geprobeerd, sterker nog ik ben begonnen met MySQLi, daarna MySQL en daarna pas PDO. Maar ik vind PDO nog steeds beter. Waarom? Omdat MySQLi voelt alsof ze de MySQL lib in een klasse hebben gestopt en meer niet. En verder omdat PDO ten minste wel een goed prepared statements systeem bevat en MySQLi niet. Tevens omdat PDO meerdere databases support en MySQLi niet.
Wat is er slecht aan PDO en waarom zou ik mysql_* of MySQLi moeten gebruiken? Zou je misschien 1 maar dan ook 1 keer je keiharde mening willen onderbouwen?
Jeroen,
In de PHPMyAdmin settings hoef je niks te wijzigen. PHPMyAdmin gebruikt gewoon wat hij wil gebruiken, volgens mij mysql_*, en dat mag je lekker zo laten. PHPMyAdmin is slechts een tool die de MySQL server omzet in leesbare data voor ons, meer niet. Je kan dus eigenlijk ook zelf je eigen PHPMyAdmin maken. Het is gewoon PHP + HTML + CSS + MySQL.
Succes met het leren van PDO! Noppes, drog redenen? Waarom?? Zou je misschien ooit eens willen uitleggen waarom jij "PDO alleen voor kleine projecten" goed vindt? Bedankt voor je reactie!
PDO is niet beter dan de bestaande pecl extensions. Dat is jouw natte droom dat dat wel zo is.
Leg nu eens uit:
"Tevens omdat PDO meerdere databases support", wat wil je daar mee schrijven dan? Want je leeft daarmee in een hele onwerkelijke droom, dat dat een voordeel is.
"PDO ten minste wel een goed prepared statements systeem bevat en MySQLi niet."
Ook dit is geblaat in de ruimte!! Het zijn twee verschillende methoden met hetzelfde resultaat, dat wil dan toch echt niet zeggen dat die van PDO beter is dan die van een andere pecl extension.
Dus kom op zeg, kom eens met een echt goede reden aan waarom een appel lekkerder zou zijn dan een peer.
Maar ja, je mag blijven dromen, maar verkondig dan niet dat PDO boven alles gaat. @Wouter, je moet leren lezen!
Het feit dat ze prepared statements en transacties hebben is ruim voldoende reden om de overstap te maken. Ook de OO interface is natuurlijk wel handig.
Of PDO beter is dan mysqli is natuurlijk minder duidelijk. Ik vind het zelf nogal raar dat ook een procedurele interface wordt aangeboden bij mysqli, maar dat is natuurlijk niet echt een nadeel.
Belangrijker is dat, zoals hier onder day 2 vermeld staat, PDO door het core team wordt gezien als de belangrijkste DB interface.
Daarentegen staat hier een overzichtje van de verschillen. mysqli wordt hier genoemd als de voorkeur van het MySQL team.
Voor mij geeft de abstractie van PDO de doorslag. Waarom zou je deze afwijzen als je dat praktisch geen overhead kost? Dat PDO en mysqli beter zijn dan mysql staat, lijkt me, buiten kijf.
Ik wil je nog een keer vragen om dan zelf te onderbouwen waarom jij MySQLi beter vind i.p.v. mee een beetje af te zeiken en PDO erbij.
En als je gaat zeggen dat ik weer verkeerd lees:
(bron)
En je mag mijn argumenten wel niks vinden, jij geeft zelf geen één argument. Je loopt eigenlijk alleen PDO en mij compleet met de grond gelijk te maken. Is dat jou enige doel hier op het forum? Mensen afzeiken zonder enige onderbouwing? Zo lang doorzeuren zodat men je wel een keertje gaat geloven? Want het kan aan mij liggen, maar jij heb hier nog NOOIT, in de tijd dat ik hier zit, iemand vriendelijk te woord gestaan of geholpen...
Hiermee wil ik bereiken dat je met MySQLi alleen de, volgens jou, oh zo slechte MySQL server kunt gebruiken. Met PDO heb je de mogelijkheid tot het werken met alle andere databases. Noppes,
Altijd kiezen voor PDO als je server dat ondersteund. MySQL_* functies gaan eruit en worden vervangen door MySQLi of PDO en dan is PDO beter.
Waarom is PDO beter?
- Prepared statements ondersteuning, dit is veiliger en sneller
- Meerdere database type support, MySQL(i) supporten allen MySQL, PDO ook alle andere DB types als Oracle, MS SQL, enz.
- PDO is een klasse, geen functie lib. Dit maakt het veel krachtiger en zorgt voor betere implentatie mogelijkheden mocht je later OOP gaan leren.
- PDO gebruik exceptions als foutafhandeling, dit is de nieuwe manier van foutafhandeling
- PDO is gemaakt voor PHP5 en daarom modern en hij maakt gebruik van nieuwe methoden. MySQL is gemaakt voor PHP4 en daarmee al ouderwets.
- MySQL wordt standaard uitgeschakeld geleverd in nieuwe versies, hierdoor heb je de kans dan de mysql_* functies niet werken
Een goede tutorial om te beginnen met PDO: phptuts.nl/view/27/
voor de rest heb ik dat ook aangepast
Gewijzigd op 17/03/2012 11:03:33 door Jeroen VD
Je loopt in mijn ogen appels met peren te vergelijken.
Het is heel makkelijk om te zeggen dat iets niet goed is, maar zolang je daar geen onderbouwing voor kunt geven, heeft zo'n opmerking weinig of beter gezegd geen waarde. Probeer in de toekomst eens aan te geven waarom je iets vindt. Ik vind... omdat... dan heeft iedereen er wat aan. Alvast bedankt.
Ik vind niks en hoef het niet te onderbouwen, het is denkstof voor degene die het leest. Er worden maar luk raak dingen beweert, waarschijnlijk omdat ze niet beter weten of nooit naar het andere gekeken hebben, - door derden - die niet gestaaft kunnen worden.
Ik werk ook met PDO en tot nog toe gaat het goed, maar alternatieven heb ik niet echt geprobeerd. Dus vandaar dat ik me afvraag waarom je de voorkeur geeft aan andere database(driver)s dan PDO. Ik heb zelf niet ervaren dat PDO buggy is.
"Ik vind niks en hoef het niet te onderbouwen, het is denkstof voor degene die het leest. Er worden maar luk raak dingen beweert, waarschijnlijk omdat ze niet beter weten of nooit naar het andere gekeken hebben, - door derden - die niet gestaaft kunnen worden."
Tuurlijk vind jij wel iets, anders zou je het niet zeggen. En soms worden er inderdaad lukraak dingen beweerd, maar juist dan is het van belang dat je aangeeft waarom die beweringen niet kloppen. Iets verkeerd onderbouwen heeft net zo weinig zin als iets helemaal niet onderbouwen. Ik hoop dat je begrijpt wat ik bedoel te zeggen. Top in ieder geval dat je even gereageerd hebt.
Dit verkondig je namelijk al een hele tijd, maar NOOIT maar dan ook echt NOOIT kom jij met redenen waarom PDO slecht is. Ik heb MySQLi, MySQL en PDO geprobeerd, sterker nog ik ben begonnen met MySQLi, daarna MySQL en daarna pas PDO. Maar ik vind PDO nog steeds beter. Waarom? Omdat MySQLi voelt alsof ze de MySQL lib in een klasse hebben gestopt en meer niet. En verder omdat PDO ten minste wel een goed prepared statements systeem bevat en MySQLi niet. Tevens omdat PDO meerdere databases support en MySQLi niet.
Wat is er slecht aan PDO en waarom zou ik mysql_* of MySQLi moeten gebruiken? Zou je misschien 1 maar dan ook 1 keer je keiharde mening willen onderbouwen?
Jeroen,
In de PHPMyAdmin settings hoef je niks te wijzigen. PHPMyAdmin gebruikt gewoon wat hij wil gebruiken, volgens mij mysql_*, en dat mag je lekker zo laten. PHPMyAdmin is slechts een tool die de MySQL server omzet in leesbare data voor ons, meer niet. Je kan dus eigenlijk ook zelf je eigen PHPMyAdmin maken. Het is gewoon PHP + HTML + CSS + MySQL.
Succes met het leren van PDO!
Gewijzigd op 16/03/2012 22:53:53 door Wouter J
PDO is niet beter dan de bestaande pecl extensions. Dat is jouw natte droom dat dat wel zo is.
Leg nu eens uit:
"Tevens omdat PDO meerdere databases support", wat wil je daar mee schrijven dan? Want je leeft daarmee in een hele onwerkelijke droom, dat dat een voordeel is.
"PDO ten minste wel een goed prepared statements systeem bevat en MySQLi niet."
Ook dit is geblaat in de ruimte!! Het zijn twee verschillende methoden met hetzelfde resultaat, dat wil dan toch echt niet zeggen dat die van PDO beter is dan die van een andere pecl extension.
Dus kom op zeg, kom eens met een echt goede reden aan waarom een appel lekkerder zou zijn dan een peer.
Maar ja, je mag blijven dromen, maar verkondig dan niet dat PDO boven alles gaat.
Het feit dat ze prepared statements en transacties hebben is ruim voldoende reden om de overstap te maken. Ook de OO interface is natuurlijk wel handig.
Of PDO beter is dan mysqli is natuurlijk minder duidelijk. Ik vind het zelf nogal raar dat ook een procedurele interface wordt aangeboden bij mysqli, maar dat is natuurlijk niet echt een nadeel.
Belangrijker is dat, zoals hier onder day 2 vermeld staat, PDO door het core team wordt gezien als de belangrijkste DB interface.
Daarentegen staat hier een overzichtje van de verschillen. mysqli wordt hier genoemd als de voorkeur van het MySQL team.
Voor mij geeft de abstractie van PDO de doorslag. Waarom zou je deze afwijzen als je dat praktisch geen overhead kost?
@noppes: als ik vragen mag, wat gebruik jij en waarom?
Ik wil je nog een keer vragen om dan zelf te onderbouwen waarom jij MySQLi beter vind i.p.v. mee een beetje af te zeiken en PDO erbij.
En als je gaat zeggen dat ik weer verkeerd lees:
Quote:
PDO is te beperkt in de mogelijkheden, je kan lang niet alles wat je met mysqli wel zult kunnen. Specifieker kan ik niet zijn, want na 1 maal er naar PDO gekeken te hebben was ik het al beu.
- PDO is leuk voor de simpele queries en een niet al te ingewikkeld databasemodel -
- PDO is leuk voor de simpele queries en een niet al te ingewikkeld databasemodel -
Quote:
PDO is geen aanrader, je zult bij bepaalde zaken alsnog de mysqli benodigen!!
(bron)
En je mag mijn argumenten wel niks vinden, jij geeft zelf geen één argument. Je loopt eigenlijk alleen PDO en mij compleet met de grond gelijk te maken. Is dat jou enige doel hier op het forum? Mensen afzeiken zonder enige onderbouwing? Zo lang doorzeuren zodat men je wel een keertje gaat geloven? Want het kan aan mij liggen, maar jij heb hier nog NOOIT, in de tijd dat ik hier zit, iemand vriendelijk te woord gestaan of geholpen...
Quote:
"Tevens omdat PDO meerdere databases support", wat wil je daar mee schrijven dan? Want je leeft daarmee in een hele onwerkelijke droom, dat dat een voordeel is.
Hiermee wil ik bereiken dat je met MySQLi alleen de, volgens jou, oh zo slechte MySQL server kunt gebruiken. Met PDO heb je de mogelijkheid tot het werken met alle andere databases.