sql >> Databáze >  >> RDS >> Mysql

Jak mohu použít MySQL uživatelem definovanou funkci z PHP?

1 a 2 jsou blízko, ale $result nebude obsahovat výsledek volání funkce. Spíše bude obsahovat výsledný soubor cookie z dotazu. Tento soubor cookie můžete použít k získání skutečných dat pomocí mysql_fetch_row() . Volání funkce pouze vrací hodnotu pro příkaz select, stejnou jako "SELECT 42" nebo "SELECT a FROM MyTable". K získání výsledku byste tedy použili stejný mechanismus jako u jakéhokoli jiného SQL dotazu, který vrací výsledky; to znamená, že použijte cookie a zavolejte mysql_fetch_row() . Takže váš konečný kód bude vypadat takto:

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

Všimněte si, že nechcete interpolovat proměnné přímo do řetězce SQL (to může být vektor pro útoky). Předpokládám však, že tento kód slouží pouze pro příklady.



  1. Návrh databáze:Který přístup je lepší?

  2. Proč nemohu odinstalovat mysql-5.5 a nainstalovat mysql-5.6 na stroji Amazon Linux?

  3. Jak zkopírovat pouze prvních 4000 znaků z Oracle NCLOB do hodnoty NVARCHAR2(4000)?

  4. Chyba migrace php artisan:zadán název uzlu ani název_serveru nebo neznám