[PHP/Scripting talen] Hoe is communicatie met db's

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • SWfreak
  • Registratie: Juni 2001
  • Niet online
Hoe gaat in PHP of andere scriptingtalen de communicatie met databases? Daarmee bedoel ik dus *niet* ODBC, maar het precieze obderliggende protocol, dus bijvoorbeeld COM.
Is COM per se nodig om met de db te kletsen?
Verschilt dit nog voor Windows en Unix?

Acties:
  • 0 Henk 'm!

  • goalgetter
  • Registratie: Juni 1999
  • Laatst online: 19-03 09:12
Voorzover ik weet is COM een microsoft only iets. (correct me if I'm wrong)

Ik kan je helaas ook niet vertellen hoe het onder *nix werkt, ben er wel benieuwd naar trouwens :)

Acties:
  • 0 Henk 'm!

Verwijderd

Met php kun je gewoon rechtstreeks tegen een database aan kletsen. Je hebt gewoon functies zoals:

mysql_connect();
cybase_connect();
mysql_query();

e.d.

Ik zou zeggen bekijk http://www.php.net voor meer info.

Acties:
  • 0 Henk 'm!

  • SWfreak
  • Registratie: Juni 2001
  • Niet online
Ja, dat snap ik ook wel. De vraag is nu hoe het op de achtergrond werkt. Kennelijk spreekt PHP dus de "MySQL taal" en connect het gewoon via de opgegeven serverURL naar de db? Daar komt geen COM aan te pas?

Acties:
  • 0 Henk 'm!

  • ruthger
  • Registratie: September 2000
  • Laatst online: 22-11-2024
PHP roept de MySQL database via de API calls in de dll's aan.

[Handleiding]
mysql_insert_id() converts the return type of the native MySQL C API function mysql_insert_id() to a type of long. If your AUTO_INCREMENT column has a column type of BIGINT, the value returned by mysql_insert_id() will be incorrect. Instead, use the internal MySQL SQL function LAST_INSERT_ID().

Veni, vidi et cervesiam


Acties:
  • 0 Henk 'm!

  • SWfreak
  • Registratie: Juni 2001
  • Niet online
Dus als ik het goed begrijp (heb php.net ook ff doorgespit), dan draait MySQL gewoon op een TCP/IP-poort en connect PHP dan naar die poort. De code voor de uitvoering daarvan etc staat in DLL's ???

Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 22-10 21:47
COM heeft opzich toch niets met databases te maken? COM is toch een protocol die toelaat dat verschillende objecten met elkaar communiceren en heeft toch niet direct te maken met DB-toegang? Of ben ik hier verkeerd?

Voor DB - toegang heb je ODBC, DAO en ADO. Microsoft pusht vooral de ADO technologie om met databeesten te spreken. Met ASP wordt er meestal een connectie met de db gelegd via ADO. Maar COM zie ik in dit hele verhaal toch niet onmiddellijk voorkomen hoor.

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • SWfreak
  • Registratie: Juni 2001
  • Niet online
Ik dacht ook dat COM er niets mee te maken had. Een vriend van mij dacht echter van wel. En de vraag is wat er *onder* je ODBC-driver ligt. Als dat COM is, dan heb je het dus alsnog :P

Maar ik ben er nu denk ik wel uit dat COM er helemaal niets toe doet...

Acties:
  • 0 Henk 'm!

  • oogapp0ltje
  • Registratie: Januari 2001
  • Niet online
hmm... i thought
ADO DAO enz. die vallen toch onder het COM/DCOM principe?

| To acknowledge what is known as known and what is not known as known is knowledge. |


Acties:
  • 0 Henk 'm!

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 03:38

Gerco

Professional Newbie

ActiveX Data Ojects (ADO) gebruik je via COM, hoe ADO verder zelf met de db praat weet ik niet. Maar ADO zit in ActiveX dll's die je via COM kan aanspreken.

php gebruikt gewoon direct de MySQL API en geen zooi als COM of ActiveX, want dat werkt ten eerste niet op non-Win32 systemen en ten tweede is het trager.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Acties:
  • 0 Henk 'm!

  • GraasGast
  • Registratie: Oktober 2000
  • Laatst online: 30-09 19:55

GraasGast

Analogue Heaven

gerco.spoke :)

Als ik (als applicatie) toch iets aan een collega wil vragen, hoef ik dat toch ook niet eerst aan de manager (COM) gaan vragen? :P
microsoft-onzin ook altijd...

Acties:
  • 0 Henk 'm!

  • TheDane
  • Registratie: Oktober 2000
  • Laatst online: 16:41

TheDane

1.618

Op donderdag 31 januari 2002 09:42 schreef GraasGast het volgende:
gerco.spoke :)

Als ik (als applicatie) toch iets aan een collega wil vragen, hoef ik dat toch ook niet eerst aan de manager (COM) gaan vragen? :P
microsoft-onzin ook altijd...
tenzij je niet weet welke collega je wat wil vragen,en die collega zit niet op dezelfde afdeling, in het zelfde gebouw, bedrijf of land als jij. :)

met andere woorden: microsoft gaat er van uit dat jij -net als vele vele anderen- gewoon dom bent, en denken 't makkelijker en voor een groter publiek aantrekkelijk te maken door een "representatieve" manager (COM) aan te stellen. ;)

bah

Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 22-10 21:47
That's were .NET comes in...

.NET maakt geen gebruik meer van COM, DCOM enzo om de applicaties met elkaar te laten praten. Zij kunnen objecten van elkaar aanspreken door middel van de CTS (Common Type checking) en CLS (Common Language System). Een .NET programma (of dat nu een C# of VB.NET programma is), is immers gecompileerd naar IL (Intermediate Language) en de communicatie gebeurt dus dmv die CLS en CTS.

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

Verwijderd

MySQL is sloom m.b.t PHP maar wanneer ik andere programma's gebruik is het weer snel :{

Acties:
  • 0 Henk 'm!

Verwijderd

Op donderdag 31 januari 2002 22:55 schreef Xtentic het volgende:
MySQL is sloom m.b.t PHP maar wanneer ik andere programma's gebruik is het weer snel :{
Wat is de overeenkomst van jou bericht met de rest van de thread?

Acties:
  • 0 Henk 'm!

  • Neman
  • Registratie: September 2000
  • Laatst online: 13-10 21:29

Neman

Een uit de lucht gegrepen naam

Op donderdag 31 januari 2002 23:24 schreef Xenith het volgende:

[..]

Wat is de overeenkomst van jou bericht met de rest van de thread?
Er komt MySQL en PHP in voor ;).
Pagina: 1