sql >> Databasteknik >  >> RDS >> Mysql

Hur använder jag en MySQL användardefinierad funktion inifrån PHP?

1 och 2 är nära, men $result kommer inte att innehålla resultatet av funktionsanropet. Snarare kommer den att innehålla resultatcookien från frågan. Du kan använda den cookien för att få den faktiska informationen, med mysql_fetch_row() . Funktionsanropet returnerar bara ett värde för select-satsen, precis som "SELECT 42" eller "SELECT a FROM MyTable". Så för att få resultatet skulle du använda samma mekanism som med vilken annan SQL-fråga som helst som returnerar resultat; det vill säga använd cookien och anrop mysql_fetch_row() . Så din slutliga kod kommer att se ut så här:

$result = mysql_query("select functionName($id)");
$row = mysql_fetch_row($result, $link);
$returnValue = $row[0];

Observera att du inte vill interpolera variabler direkt i en SQL-sträng (som kan vara en vektor för attacker). Jag antar dock att den här koden bara är för exempel.



  1. ADDDATE() Exempel – MySQL

  2. Är det möjligt att få listan med rader grupperade efter ett kolumnnamn i Mysql?

  3. SEPARATOR-nyckelordet fungerar inte korrekt i Hibernate Formula

  4. Mina favoritpostgreSQL-frågor och varför de är viktiga