Strona 1 z 1

1. Problem z wartoscią pola. 2. Eksport do WWW

: pt sty 14, 2011 3:17 pm
autor: panbaryla
Witam i pytam :)

Rozpocząłem prace z następującą bazą obsługującą serwisy urządzeń.

Wyskrobałem sobie 4 tabele

Klient
Maszyna
Maszyna_Awaria
Maszyna_Serwis (planowane serwisy, wykonane ect)

Relacja: Klient ma N Maszyn. Maszyna ma N Awarii i N Serwisów

I mam 2 pytania.

1. Tabela Maszyna jak klucz główny ma ustawiony na pole numer_seryjny, typ pola integer bez wartości automatycznej. W tej samej tabeli jest pole maszyna_id, typ pola integer ale wartość chce ustawić też na automat a nie mogę bo otrzymuje komunikat błędu
Stan SQL: s0021
Kod błędu: -58

Column constraints are not acceptable in statement [ALTER TABLE "maszynalast" ADD "maszyna_id" INTEGER IDENTITY]
2. Chciałbym dane klienta eksportować do do bazy SQL i wrzucać na stronę aby mógł sobie przeglądać zdażenia które dotyczą wszystkich przypisanych mu maszyn. Jak ugryźć taki temat?

Z góry dziękuję za najdrobniejsze nawet podpowiedzi.

Re: 1. Problem z wartoscią pola. 2. Eksport do WWW

: sob sty 15, 2011 6:49 pm
autor: Jan_J
Zależy dla jakiej bazy piszesz polecenie. W HSQLDB

Kod: Zaznacz cały

alter table moja add column nowa integer;
alter table moja alter column nowa identity;
Więcej: http://www.hsqldb.org/doc/1.8/guide/, ale nie wszystkie konstrukcje składniowe z dokumentacji zdają się działać w OOoBase.

Co do bazy SQL: czy ma być osobna (jakby trochę głupio), czy ta sama na której pracujemy (lepiej). Musiała by współpracować z Base przez JDBC. Firebird, MySQL, Postgres, ... Do małego jednoosobowego projektu wystarczy SQLite: mała, szybka, plikowa, obywa się bez serwera -- wystarcza sterownik.

Ale z obsługą SQLite pod Base przez JDBC nie jest dobrze. W http://wiki.services.openoffice.org/wik ... Office.org opisana jest współpraca przez ODBC. Nie próbowałem.

Do zrobienia przeglądu tabeli czy perspektywy przez WWW dobry będzie krótki skrypt w PHP albo Pythonie. Wszystkie wymienione wyżej bazy mają odpowiednie sterowniki dla każdego z tych języków. W przypadku SQLite wrzucam zaktualizowaną bazę na serwer WWW i gotowe.

W Twojej sytuacji najlepsza byłaby perspektywa, która na podstawie nazwy użytkownika filtrowałaby listę sprzętu. Tylko wcześniej trzeba uwierzytelniać dostęp, żeby nie widział za dużo. W przypadku dostępu przez WWW oznacza to obsługę sesji, a nazwę użytkownika można wziąć z loginu.

Re: 1. Problem z wartoscią pola. 2. Eksport do WWW

: ndz sty 16, 2011 11:13 am
autor: panbaryla
...dzięki za odpowiedź :)

A jakiego pakietu używasz do HSQLDB? Znalazłem jakieś HSQLDB-utils w synapticu ale wyglądają drętwo... :)

Re: 1. Problem z wartoscią pola. 2. Eksport do WWW

: ndz sty 16, 2011 12:39 pm
autor: Jan_J
Nie używam. HSQL jest dobra dla systemów wbudowanych, i ma dość ubogi dialekt SQL. Spróbuj operacji na datach, to zobaczysz. Napisana w Javie, dobry dostęp jest przez JDBC albo w OpenOffice.

Re: 1. Problem z wartoscią pola. 2. Eksport do WWW

: ndz sty 16, 2011 10:40 pm
autor: panbaryla
...jestem zielony. Jak ma ten kod wykonac?
Pzdr

Re: 1. Problem z wartoscią pola. 2. Eksport do WWW

: pn sty 17, 2011 9:00 pm
autor: panbaryla
Zapytam inaczej. Jaki typ pola ustawić w tabeli klient aby nip w formacie 000-000-00-00 mógł być klient_id z kluczem głównym a jaki w tabeli maszyna aby numer seryjny w formacie 000000 mógł być maszyna_id z kluczem głównym?

Re: 1. Problem z wartoscią pola. 2. Eksport do WWW

: wt sty 18, 2011 4:03 pm
autor: panbaryla
Odpowiem sobie sam :) Tekst (stały) [CHAR]