Mysql
 sql >> Base de données >  >> RDS >> Mysql

Tableau PHP en entrée de la procédure stockée

Vous devez juste être plus intelligent dans vos appels. Par exemple, conserver des objets de base de données en cache et ce genre de choses.

Sans en savoir plus sur votre code (votre question est assez brouillée), il semble que si votre requête ressemble à ceci :

$query = "select abc from tblname where colname =" .$value; // run 10 times.

Vous avez juste besoin d'écrire un code plus intelligent :

$values = array(); // Now, populate this array.  
                   // When you're done, run the query:
$query = 'select abc from tblname where colname IN (\''.implode('\',\'', $values).'\')';

Généralement, nous appelons cela Dynamic SQL et c'est le fondement de la façon dont les choses sont généralement faites aujourd'hui. Une procédure stockée (ou, selon la façon dont j'ai lu votre question, une fonction stockée) est parfois utile, mais est quelque peu désuète en tant que méthodologie de premier ordre pour l'interface avec SQL. Les gars de la DB ne jurent que parfois par ça, mais je pense que même eux sont assez d'accord sur le fait que les requêtes plus intelligentes sont toujours meilleures.