Oznámení
globalni prefix tabulek – uz v Connection options?
před 10 lety
- knedle
- Člen | 34
zdravim,
mam nekde v hlave pocit, ze jsem tohle reseni uz videl (nejaky stary tutorial?). Ale nedari se mi zdroj dohledat a kdyz se divam do kodu dibi, tak to tam take nevidim.
z predmetu postu je myslim jasne, co hledam/bych chtel:
nastavit prefix pro vsechny tabulky uz v connection string, at nemusim osetrovat kazdy sql dotaz
$options = array (
'driver' => 'mysql' ,
'host' => 'localhost' ,
'username' => 'root' ,
'password' => '***' ,
'database' => 'nejaka_db' ,
'prefix' => 'wp_' ,
);
// v případě chyby vyhodí DibiException
$connection = new DibiConnection( $options );
pricemz
$connection ->query( 'TRUNCATE [table]' );
// by hodilo
// TRUNCATE `wp_table`
// naledne
$connection ->query( 'TRUNCATE [table2]' );
// by hodilo
// TRUNCATE `wp_table2`
pouzitelnost je myslim jasna, mam aplikaci, ktera pracuje jen s urcitou casti tabulek ve databazi – a vsechny maji shodny prefix
aktualni :prefix:table, :prefix:table2. :prefix:table3… je zbytecne narocne
před 10 lety
- phx
- Člen | 652
Osobne jsem si :prefix:tabulka zkratil na ::tabulka a ve vychozi konfiguraci mam :: = ''. Ale i tak jsem to asi obcas nekde opomenul.
před 10 lety
- vlki
- Člen | 218
Bojím se, že dibi aktuálně neumí rozeznat v dotazu tabulku od sloupců.
$connection ->query('SELECT [column] FROM [table]');
Jak zjistit, co v takovém případě prefixovat a co ne?
před 10 lety
- PetrP
- Člen | 587
Heh, tohle jsem 2 dny zpátky taky řešil (tady v již napsané aplikaci jsem potřeboval rychle přidat prefixy).
vlki napsal(a):
Bojím se, že dibi aktuálně neumí rozeznat v dotazu tabulku od sloupců.
$connection ->query('SELECT [column] FROM [table]');
Jak zjistit, co v takovém případě prefixovat a co ne?
Tady by to ještě šlo, ale u takovýhle věcí by to bylo už složitejší:
$connection ->query('SELECT [table.column], [table2.id], (SELECT [puficky] FORM [table]) AS puficky FROM [table], [dalsitable] AS table2');