Błąd aktualizacji rekordu

Użytkowanie programu bazodanowego
andro
Posty: 29
Rejestracja: ndz gru 30, 2018 3:34 am

Błąd aktualizacji rekordu

Post autor: andro »

Witam wszystkich,
Mam problem. Otóż stworzyłem bazę danych, zmodyfikowałem pola i wydawało się, że wszystko będzie ok. Problem pojawił się, gdy próbowałem zapisać pierwszy rekord. Po wypełnieniu któregoś z pół listy i próbie zapisu pojawia się błąd aktualizacji. Nie wiem co w tej sytuacji zrobić
Dla wyjaśnienia na screenie nazwa cruk jest nazwą tabeli.
Załączniki
błąd zapisu rekordu.docx
(126.97 KiB) Pobrany 153 razy
libreoffice 6.1.4.2 Win 10
andro
Posty: 29
Rejestracja: ndz gru 30, 2018 3:34 am

Re: Błąd aktualizacji rekordu

Post autor: andro »

Wszystko ok. W tabeli cruk nie były poprawnie ustalone długości poszczególnych pól
libreoffice 6.1.4.2 Win 10
Jan_J
Posty: 4558
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Błąd aktualizacji rekordu

Post autor: Jan_J »

Formalnie:
1. zamiast graficznego SCREENA jako podstawa do dyskusji wystarczyłby TEKST z diagnozą błędu, cytuję
Value too long in statement [UPDATE "cruk" SET "rodzaj odstępstwa" = ? WHERE "ID" = ?]
(ktoś i tak musiał to napisać, by było co komentować ;()
2. nawet graficzny SCREEN załączony do postu byłby lepszy od DOKUMENTU BIUROWEGO w formacie docx, z osadzoną grafiką.

Merytorycznie:
1. tabela "cruk" ma swój opis definiujący, z którego wynika m.in. maksymalna dozwolona długość jej pól, w tym pola "rodzaj odstępstwa". Sądzę, że wartość pobrana z formularza jest zbyt długa w porównaniu z tymi ustaleniami. Po prostu znaków wpisano za dużo, albo zadeklarowano za mało miejsca na nie.
2. do czego jak widać sam doszedłeś, i słusznie.
3. opisowa nazwa pola "rodzaj odstępstwa" będzie sprawiała problemy, jako że zawiera spacje i litery niełacińskie. Problem może się objawić w przypadku zmiany architektury projektu: przeniesienie do innej bazy, wyposażenie w interfejs WWW, itp. Lepiej się samoograniczać pod względem dyscypliny, żeby później uniknąć nieoczekiwanych komplikacji. Przykładowa nazwa "ID" zamiast opisowej "Identyfikator w tabeli" jest OK; tu dobrym kandydatem byłaby np. "rodzaj_odst". Z tym że bieżący problem na 100% ma inną przyczynę.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ODPOWIEDZ