sql >> Database >  >> RDS >> Mysql

PHP-array als invoer voor opgeslagen procedure

Je moet gewoon slimmer zijn met je telefoontjes. Bijvoorbeeld het in de buurt houden van DB-objecten in de cache en dat soort dingen.

Zonder meer te weten over je code (je vraag is nogal onleesbaar), lijkt het erop dat als je vraag zoiets is als dit:

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

Je hoeft alleen maar slimmere code te schrijven:

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

Over het algemeen noemen we dit dynamische SQL en het is de basis voor hoe dingen tegenwoordig worden gedaan. Een opgeslagen procedure (of, afhankelijk van hoe ik uw vraag lees, een opgeslagen functie) is soms nuttig, maar is enigszins verouderd als een eerste-orde-methodologie voor interfacing met SQL. De DB-jongens zweren er soms nog steeds bij, maar ik denk dat zelfs zij het er redelijk goed over eens zijn dat slimmere zoekopdrachten altijd beter zijn.




  1. Tips voor het upgraden van Percona XtraDB Cluster naar 8.0

  2. Hoe tabel-gewaardeerde parameters doorgeven van java naar sql server opgeslagen procedure?

  3. Maak een MySQL-gebruiker op Linux via de opdrachtregel

  4. 3 manieren om de tijdzone te retourneren van een datetime-waarde in Oracle