[php] en [mysql] - constraints my-isam

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik weet dat MyISAM geen foreign keys ondersteund en dat InnoDB dat wel doet. Op dit ogenblik gebruikt ik nog MyISAM tabellen en los ik de constraints zoals "cascading delete" op in mijn php script: delete.php. Hoe wordt dit over het algemeen opgelost, en is er een betere manier om dit op te lossen?

Ik wil wel overstappen op InnoDB maar ik heb gelezen dat dit bij counts en zoekacties nogal traag is.

[ Voor 7% gewijzigd door Verwijderd op 10-05-2003 16:38 ]


Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Verwijderd schreef op 10 May 2003 @ 14:09:
Hoe wordt dit over het algeen opgelost, en is er een betere manier om dit op te lossen?
Hoe bedoel je anders?
Er lijkt me geen andere manier dan het proberen te regelen via je scripting, hoewel dit nooit zo netjes, correct en gegarandeerd volledig is als via de foreign-key werking.
Ik wil wel overstappen op InnoDB maar ik heb gelezen dat dit bij counts en zoekacties nogal traag is.
Traag?
Wat is traag? Dat mysql met myisam nou stiekem naar de table-header kijkt en helemaal niet telt hoeveel items er werkelijk zijn (als je een count( * ) from table zonder where doet) zegt nog niet dat innodb dan maar ineens traag is :)

En wat zijn zoekacties? Selects op grote indices? Is natuurlijk niet traag. Selects met een like op een enorme tabel? Als je dat doet zal je toch es naar je applicatie moeten kijken, want dat is doorgaans niet efficient/snel ook niet bij myisam.

Acties:
  • 0 Henk 'm!

Verwijderd

Het is gebruikelijk om bij een PHP + MySQL app alle database logica in je PHP code te steken (je kan ook niet anders als je mysql op de 'standaard' manier gebruikt). Overigens zijn de databases achter PHP apps meestal niet van de complexiteit dat dit echt problemen zou vormen lijkt me.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ACM schreef op 10 mei 2003 @ 14:26:
Selects met een like op een enorme tabel? Als je dat doet zal je toch es naar je applicatie moeten kijken, want dat is doorgaans niet efficient/snel ook niet bij myisam.
Hoe moet dat dan? :)

Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Dat hangt helemaal van je applicatie af. Als je een fulltext search wilt doen kan je naar de vele fulltext-search engines/oplossingen kijken.

Als je het om andere redenen doet moet je es kijken wat je precies zoekt en waarom je dat met een like doet.

Er is iig geen generieke oplossing voor 'het niet gebruiken van een LIKE'.