Typ pola w tabeli

Użytkowanie programu bazodanowego
erper
Posty: 7
Rejestracja: czw kwie 19, 2018 11:01 pm

Typ pola w tabeli

Post autor: erper »

Witam,
Słabo znam LO Base stąd moje pytanie. Jaki typ pola ustawić w tabeli, żeby przechowywała linki do plików z obrazami .jpg (skany znaczków). Pytam, gdyż pierwotnie ustawiłem na LONGVARBINARY i skany wchodzą jako OBIECT, ale po jakimś czasie cały system się "wywala" z komunikatem o błędzie "S1000 general error java.lang. nullpointerexception in statement". Na angielskojęzycznym forum znalazłem post wyjaśniający, że po zapisaniu w tabeli większej liczby obrazów java często tego nie wytrzymuje i zawiesza system, usuwając przy tym część rekordów. Czegoś takiego właśnie doświadczyłem. Chciałbym zmienić typ pola na taki, który pozwoliłby przechowywać linki do plików z obrazami (w formularzu klikam na obraz, a w tabeli zapisuje się link do niego). Chciałbym mieć możliwość wyświetlenia obrazu w formularzu i kwerendzie, utworzonych na podstawie tabeli z takim linkiem. Próbowałem z polem typu VARCHAR, ale wówczas w formularzu i kwerendzie wyświetla się tylko tekst, a nie obrazek.
Będę wdzięczny za pomoc i podpowiedź. Tylko proszę o taką dla laika, a nie gościa biegłego w programowaniu itp.

erper :D
LibreOffice 5.4.6.2(x64); Win10 (x64; komp 1709)
Jan_J
Posty: 4557
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Typ pola w tabeli

Post autor: Jan_J »

Base nie jest bazą danych, tylko dość ograniczonym interfejsem do baz danych.
Domyślnie współpracuje z wbudowaną w LibreOffice bazą HSQL DB w nieco przestarzałej wersji 1.8.
Potrafi współpracować, przede wszystkim poprzez sterownik JDBC, z wieloma innymi bazami,
w tym z nie wymagającymi instalacji osobnego serwera JDBC 2.x oraz Firebird, ale także z klasycznymi serwerowymi MySQL, MariaDB oraz PostgreSQL.
W eksperymentalnych opcjach znajduje się możliwość obsługi wbudowanej bazy Firebird. Firebird jest dojrzałym i stabilnym systemem relacyjnych baz plikowych. Eksperymentalny jest interfejs, co oznacza brak gwarancji na kontynuację sposobu współpracy obu modułów w przyszłych wydaniach.
Oprócz tego, Firebirda da się uzywać poprzez sterownik JDBC (https://firebirdsql.org/en/jdbc-driver/) jako bazę zewnętrzną. Wtedy plik Base'a .odb nie mieści samej bazy, tylko odwołuje się do niej jako do osobnego pliku.
Podobnie da się korzystać z nowszej wersji HSQL DB. Trochę więcej o tej możliwości napisano w https://forum.openoffice.org/en/forum/v ... 13&t=55220
JJ
LO (7.6) ∙ AOO (4.1) ∙ Python (3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
erper
Posty: 7
Rejestracja: czw kwie 19, 2018 11:01 pm

Re: Typ pola w tabeli

Post autor: erper »

Dziękuję za tę odpowiedź. Na forum angielskojęzycznym znalazłem post odnoszący się do podobnych kłopotów jak moje, w którym autor radzi zainstalowanie pakietu Split_HSQLDB_2.3.3+Wizard_v3d.odb. Ale jeśli zainstaluję sobie np. Firebirda, to czy będę musiał od podstaw tworzyć to wszystko co mam w LO Base (tabele- wypełnione już rekordami, formularze, kwerendy), czy też jest możliwość przeniesienia tego do Firebirda. LO Base w zasadzie nie daje możliwości eksportu i importu danych. To co można w nim zrobić (tak wyczytałem w "Pomocy") to - chcąc wyeksportować: skopiować zawartość tabel, wkleić je do arkusza "Calc" ; chcąc zaimportować - skopiować dane z arkusza "Calc" i wkleić je jako rekordy do tabeli w "Base". Ale będą one "Tylko do odczytu", bez możliwości edycji.
Z góry dziękuję za rzeczową poradę.
erper
LibreOffice 5.4.6.2(x64); Win10 (x64; komp 1709)
belstar
Posty: 654
Rejestracja: czw mar 17, 2011 9:08 am

Re: Typ pola w tabeli

Post autor: belstar »

Spróbuj tego rozwiązania, może spełni twoje wymogi. Kiedyś pobrałem z angielskiego forum, autora nie znam.
Załączniki
picture_links.zip
(92.8 KiB) Pobrany 175 razy
LibreOffice 5.1.2.2 Ubuntu 16 LTS
erper
Posty: 7
Rejestracja: czw kwie 19, 2018 11:01 pm

Re: Typ pola w tabeli

Post autor: erper »

Dziękuję za tę podpowiedź. Spróbuję - może Java przestanie sygnalizować błąd i usuwać już zapisane rekordy z bazy.
erper
LibreOffice 5.4.6.2(x64); Win10 (x64; komp 1709)
erper
Posty: 7
Rejestracja: czw kwie 19, 2018 11:01 pm

<SOLVED>Re: Typ pola w tabeli

Post autor: erper »

Rozwiązanie podesłane przez "belstara" z forum angielskojęzycznego nie zadziałało tak jak bym chciał, ale jeszcze raz przeszukałem net wreszcie znalazłem to czego chciałem, tzn. rozwiązania dla zapisywania w bazie linków do plików graficznych, taż żeby w formularzach i kwerendach były widoczne obrazki. Teraz tylko czeka mnie trochę pracy żeby wprowadzić zmiany w dotychczasowych tabelach, ale nie stracę żadnego z wprowadzonych już rekordów. Jeśli ktoś miałby podobny przypadek, to poniżej link z rozwiązaniem:
https://www.youtube.com/watch?v=IsHqqvn2zYg

erper
LibreOffice 5.4.6.2(x64); Win10 (x64; komp 1709)
ODPOWIEDZ