sql >> Base de Datos >  >> RDS >> Mysql

PHP Array como entrada al procedimiento almacenado

Solo tienes que ser más inteligente con tus llamadas. Por ejemplo, mantener los objetos de base de datos almacenados en caché y ese tipo de cosas.

Sin saber más sobre su código (su pregunta es bastante confusa), parece que si su consulta es algo como esto:

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

Realmente solo necesitas escribir un código más inteligente:

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

En general, nos referimos a esto como Dynamic SQL y es la base de cómo se hacen las cosas normalmente hoy en día. Un procedimiento almacenado (o, según cómo leí su pregunta, función almacenada) es útil a veces, pero es algo anticuado como metodología de primer orden para interactuar con SQL. Los muchachos de DB todavía confían en él a veces, pero creo que incluso ellos están bastante bien de acuerdo en que las consultas más inteligentes siempre son mejores.