|
|
PostgreSQL - nejdou vytvářet agregace
|
1.1.2008 17:29
J.Černý
|
Nainstaloval jsem si nově Debian a při instalaci jsem dal naistalovat i databáze. Nainstaloval se mně PostgreSQL 7.4. Protože databáze kterou mám u poskytovatele je 8.2, tak jsem 7.4 pomocí Synapticu (s debianem jsem dosud nikdy nic nedělal - Synaptic je v nabídce) odebral a nainstaloval PostgreSQL 8.1, která byla v nabídce. Celkem se mně podařilo vytvořit stejnou databázi jako mám u poskytovatele, jen se nevytvořila agregace, kterou jsem tam měl. Zkoušel jsem ji vytvořit, ale zatím všechny pokusy selhaly, nenašel jsem nic ani na Googlu. Vytvořil jsem si superuživatele, pod kterým to dělám. Když jsem to zkoušel pod phppgadminem tak mně to u agregací vůbec nezobrazí nabídku Create AGGREGATE. V původní 7.4, kterou jsem měl na Gentoo, to normálně fungovalo. Když to zkusím přes SQL, tak nahlásí chybu u závorky, kterou začíná tělo agregace.
Když jsem to zkoušel přes psql (je to jednoduchá agregace CREATE AGGREGATE aggarray(anyelement) (
SFUNC = array_append,
STYPE = anyarray,
INITCOND = '{}'
);
kterou jsem vytáhl z exportu původní databáze), tak to nahlásilo chybu, že chybí basetype, což je pravda - nevím proč v exportu z 8.2 chybí. Dodal jsem tam basetype=anyarray. Pak to napíše, že chybí funkce array_append. Ale když dam zobrazit funkce, tak tam append_array je. Fakt už nevím kde je chyba. |
|
|
Re: PostgreSQL - nejdou vytvářet agregace
|
2.1.2008 20:15
Pavel Stěhule
|
Tak jsem si kvuli tomu 8.1 nainstaloval. Problem je v syntaxi. 8.2 podporuje novy zapis, ktery umoznuje viceparametricke agregacni funkce. Tento zapis 8.1 nezna.
postgres=# create aggregate aggarray (basetype = anyelement, sfunc = array_append, stype = anyarray, INITCOND = '{}');
CREATE AGGREGATE
Pavel Stehule |
|
|
Re: PostgreSQL - nejdou vytvářet agregace
|
3.1.2008 17:26
J.Černý
|
Díkz za snahu. Bohužel to jsem zjistil taky, ale pak to hlásilo, že chybí funkce array_append. Navíc jsem nebyl schopen zprovoznit zvukovou kartu. Výsledkem pokusů bylo, že přestalo reagovat gnome po přihlášení. Vyřešil jsem to tak, že jsem si nainstalovat Ubuntu server, doinstaloval na něj desktop a teď funguje všechno.
vlastně taky ne, ale to asi bude někde chyba ve vytvoření databáze nebo ve webovém serveru. Po restartu celého počítače (předtím to šlo), kde teď už mám PostgreSQL 8.2, který se nainstaloval automaticky, a po spuštění phppgadmin to nahlásí:
Warning: htmlspecialchars() [function.htmlspecialchars]: charset `utf8' not supported, assuming iso-8859-1 in /usr/share/phppgadmin/libraries/lib.inc.php on line 224
Warning: Cannot modify header information - headers already sent by (output started at /usr/share/phppgadmin/libraries/lib.inc.php:224) in /usr/share/phppgadmin/classes/Misc.php on line 359
Ale to teprve začínám zkoumat :-), předpokládám, že to je něco s Apachem, protože přes psql to funguje normálně.
Díky, J.Č.
|
|
|
Re: PostgreSQL - nejdou vytvářet agregace
|
3.1.2008 18:16
J.Černý
|
Odpovím si sám. Chyba byla v to, že v konfiguračním souboru pro apache (největší problém ho bylo najít - mime.conf) chybělo nastavení pro WINDOWS1250.
|
|
|
|
|
KOMENTARZE
|
Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
|
|
Szukanie oprogramowania
|
©Pavel Kysilka - 2003-2024 |
maillinuxsoft.cz | Design:
www.megadesign.cz
|