Fórum pro uživatele kancelářského balíku OpenOffice | LibreOffice
 

#1 7. 5. 2015 11:42:35

jardahop
Člen
Registrace: 7. 5. 2015
Příspěvků: 3

Jak na sql

Potřeboval bych vykonat některé jednoduché sql příkazy. Např.:DELETE FROM Žáci WHERE (Žáci.Známka)=5;
V Accessu se takové věci daly řešit pomocí tzv.: akčních dotazů. Něco podobného jsem v Base nenašel.
Příkazy zaznamenané do příkazového okna sql (nástroje -> SQL) mně někdy fungují a někdy ne. Také bych potřeboval vědět, jestli se dají SQL scripty nějak uložit a potom spouštět pomocí zmíněného okna (nebo i jinak). Děkuji za rady.

Offline

#2 7. 5. 2015 13:54:14

student
Člen
Registrace: 27. 2. 2006
Příspěvků: 112

Re: Jak na sql

Tieto veci sa robia v Base tiež pomocou dotazov (najjednoduchšie) - treba vybrať "Vytvoriť dotaz v režime návrhu" alebo "Použiť sprievodcu na vytvorenie dotazu". Tam vybrať potrebné tabuľky, z nich vybrať potrebné stlpce - nastaviť potrebné filtre, parametre výberu a dať uložiť dotaz. Ak možnosti "grafiky" nepostačujú, treba následne otvoriť dotaz v SQL mode (pravým kliknúť na vytvorený dotaz a vybrať "Upraviť v SQL zobrazení") a tam doladiť.
Tak v skratke.... myslím, že vybrať 5 by malo byť jednoduché aj s použitím sprievodcu.

Editoval student (7. 5. 2015 13:58:10)

Offline

#3 11. 5. 2015 09:28:29

jardahop
Člen
Registrace: 7. 5. 2015
Příspěvků: 3

Re: Jak na sql

Ano. SELECT funguje tak jak by mel. Nefungují mně příkazy DELETE a UPDATE. Pokud vytvořím dotaz pro výběr, tak to funguje. Pokud změním SELECT na DLETE, tak to nejde.

Offline

#4 12. 5. 2015 06:18:58

Ondra.kl
Člen
Registrace: 30. 9. 2008
Příspěvků: 933

Re: Jak na sql

... nefunguje ... protože jste v sekci dotazy kde se definují dotazy, nikoli akce. Už jsem s tím dlouho nedělal, ale myslím že base nemá vlastní sql talk / příkazový řádek pro sql.

Můžete ale nad daty vytvořit formulář a v něm data upravovat. Kdysi tu byl seriál o base ... dělal se v tom evidence knihovny ... zkuste pohledat.

Offline

#5 12. 5. 2015 09:09:36

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 3,467

Re: Jak na sql

SQL je v Base dost omezené. V podstatě jde o ořezanou verzi normy SQL tuším 92 (nevím už jistě). Filozofie je v tom, že místo DELETE se provede nový dotaz s příslušným filtrem. Vlastní zdrojová tabulka se neupravuje. Výstupem SQL je zase tabulka. Vytvoření formuláře (pohledy), nebo tiskové sestavy jsou také možné. Takže z pohledu této filozofie akce smazat (přepsat ap) potřeba nejsou.
     Navíc funguje mechanizmus úpravy v Calcu kde to jde udělat snadno a Calc pak uložit jako zdrojovou tabulku. Tyhle věci jsem dělal v souvislosti na obsahy ListBoxů a ComboBoxů pro dialogy. (Pro obyčejné Form fungovaly data v sešitě označená jako data s názvem).
     Úpravy zdrojových tabulek jsou možné, ale není to moc pohodlné ani šikovné. Zřejmě proto bylo do LibreOffice namontováno jádro Firebirdu jako druhá vlastní databáze.
     Také s Base moc nedělám, ale vím, že některé SQL příkazy fungovaly i když jako dotaz postavit nešly a neměly fungovat ani jako psané. (Primárně se SQL píše jako text.)

Editoval neutr (12. 5. 2015 09:11:20)


Moje e-mailová adresa
Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte orientaci při vyhledávání řešení JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#6 12. 5. 2015 12:27:25

student
Člen
Registrace: 27. 2. 2006
Příspěvků: 112

Re: Jak na sql

Možno by to išlo inak. V niektorých databázach sa vety nevymažú v skutočnosti, ale sa označia ako vymazané, a ďalej sa nezobrazujú v zostavách, formulároch.... Stačí do databázy vložiť ďalšie pole s hodnotuu yes/no (0/1) a zohľadniť to v ďalších výberoch...

Offline

#7 12. 5. 2015 14:40:07

hdplot
Člen
Registrace: 18. 2. 2015
Příspěvků: 116

Re: Jak na sql

Ano jak již tu bylo řečeno - pokud chcete v tabulce mazat, tak nesmí zobrazovat tabulka data dotazu, ale přímo pohled do základní tabulky na kterou je aplikovaný příslušný filtr (který může být poměrně složitý a definovaný pomocí SQL příkazů). V takto vyfiltrované základní tabulce by měly jít dělat jakékoliv úpravy (tedy DELETE atd.) ovšem už asi jenom po jednotlivých řádcích (záznamech) ručně)

Offline

#8 13. 5. 2015 07:42:08

jardahop
Člen
Registrace: 7. 5. 2015
Příspěvků: 3

Re: Jak na sql

Děkuju za informace. Teď se v tom musím pohrabat a snad do toho nějak proniknu. Takže ještě jednou: Díky všem.

Offline

Zápatí