wojtek4994 Opublikowano 29 Grudnia 2007 Zgłoś Opublikowano 29 Grudnia 2007 (edytowane) Witam! Dawno mnie tu nie było ale ten problem zmusił mnie do powrotu :-P ale do rzeczy: Muszę napisać program - prostą bazę danych w Turbo Pascalu. Ma to być program obsługujący gabinet zabiegowy. Baza składa się z trzech tabel - każda w osobnym pliku. Na razie staram się zrobić obsługę jednej, jednak mam problem z usuwaniem rekordów. Zastosowałem metodę przepisywania wszystkich rekordów oprócz tego usuwanego do tymczasowego pliku, po czym usuwam oryginał i zmieniam nazwę tymczasowego na właściwą. Problem w tym, że przy przepisywaniu rekordów z jednego pliku do drugiego program jakby gubił 3 bajty kończące rekord (tak wnioskuję z obserwacji :-P ). W wyniku tego późniejsza próba wyświetlenia zawartości pliku w programie kończy się błędem albo informacją, że plik jest pusty... Nie mam pojęcia o co tu chodzi, może to jakiś głupi błąd, ale na prawdę jestem zdesperowany bo mam bardzo mało czasu i nie mam pojęcia jak to zrobić :mur: Proszę o pomoc, czas nagli... Oto kod: [uSUNIĘTY] //temat nieaktualny Edytowane 6 Stycznia 2008 przez wojtek4994 Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
KrOOliK89 Opublikowano 29 Grudnia 2007 Zgłoś Opublikowano 29 Grudnia 2007 t_recPacjent = record id : longint; nazwisko : string[30]; imie : string[15]; rok_ur : word; adres : string[60]; telefon : string[10]; usniete : bool; end; I później sprawdzasz czy usunięte = false, jak tak to nie pokazujesz, czy tam coś. Co prawda nie analizowałem tego kodu, ale pomyśl co by było gdyby... Baza miała 10000 wpisów, wtedy usunięcie jednego by już trwała długo. A tak raz na jakiś czas zrobisz "synchronizacje" bazy i wtedy usuwasz. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
wojtek4994 Opublikowano 29 Grudnia 2007 Zgłoś Opublikowano 29 Grudnia 2007 No dobra pomysł nienajgorszy, ale rekordy i tak trzeba jakoś usuwać... To nie jest rozwiązanie mojego problemu... Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
PelzaK Opublikowano 1 Stycznia 2008 Zgłoś Opublikowano 1 Stycznia 2008 Q1: czy użyłeś debugera? A1: (domniemana odpowiedź) nie... Jeśli masz debuger w środowisku w którym piszesz.. użyj go a rozwiążesz problem szybciej niż zajęło Ci założenie tego tematu :) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
wojtek4994 Opublikowano 6 Stycznia 2008 Zgłoś Opublikowano 6 Stycznia 2008 Nawet probowalem uzyc tego debugera ale nie za bardzo mi to wyszlo... w zasadzie problem byl zwiazany chyba ze wskaznikiem w procedurze otwierajacej/zamykajacej plik... jak przepisalem ja bez tego to dziala... podobno wskaznik powinien byc konkretnego typu np. ^file of [cos_tam] a nie ogolnie na dowolny plik ^file Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...