Odkazy: dibi | API reference

Forum: [česky] [english]

dibi fórum

tiny ‘n’ smart
database layer

Nejste přihlášen(a)

#1 před 3 lety

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 5548

Funkce REPLACE() v SQLite

V databázi SQLite 2 chybí poměrně užitečná funkce REPLACE() pro úpravu textů.

SELECT REPLACE('dibiphp.com', 'dibi', 'nette');
        -> 'nette.org'

Existuje ale řešení, jak ji doplnit:

function sqliteReplace($s, $from, $to)
{
        return str_replace($from, $to, $s);
}

// pripojime se k databázi
$conn = dibi::connect('driver=sqlite&database=database.sdb');

// zaregistrujeme PHP funkci sqliteReplace() se třemi parametry jako SQLite function REPLACE()
$conn->driver->registerFunction('REPLACE', 'sqliteReplace', 3);

// použijeme v příkazu
$conn->query("UPDATE table SET text = REPLACE(text, 'dibi', 'nette')");

 

Zápatí