Tworzenie nowej kolumny w Tabeli - Delphi

0

Witam!

Stworzylem tabele, potrzebuje dodac do niej nowe kolumny.
Probowalem roznymi sposobami :P Cos w stylu

  1. DBGrid3.Columns.Add.FieldName:= 'Nazwa';

  2. Table3.FieldDefs.Add('Nazwa',ftstring,10,false);

  3. Query1.SQL.Add('ALTER TABLE rezerwacje ADD 'Nazwa' VARCHAR(10)');

Niestety z mizernymi skutkami. Tzn. pierwszy przyklad dodaje kolumny, ale raczej tylko "wizualnie", poniewaz pozniej nie moge do nich przypisac wartosci, a takze zmiany nie zapisuja sie.

Z gory THX z szybka [cya] odpowiedz.

0

Po co dodawac kolumny w czasie dzialania programu? Watpie, czy to w ogole jest mozliwe. Opisz konkretniej problem, bo na pewno da sie go rozwiazac bez wstawiania kolumn w programie.

0

Po co dodawac kolumny w czasie dzialania programu?

Wierz mi, przydaje się.

Watpie, czy to w ogole jest mozliwe.

Ja to troszkę inaczej robiłem. Potrzebowałem jedynie struktury, bez danych. Brałem bierzącą strukturę tabeli i kopiowałem pola do nowej, a potem dodawałem brakujące pola. Dopiero wtedy tworzyłem całą tabelę.
Z tym, że ja nie potrzebowałem mieć danych, więc nie musiałem ani danych kopiować ani robić tego na istniejącej tabeli.
Jeżeli dodajesz nowe kolumny, to jak w takim razie mają być zainicjalizowane dane w niej?

W większości przypadków, jak wspomniał CD, można problem rozwiązać bez dodawania kolumn. Jeżeli istnieje konieczność dodawania kolumn, w zależności od wprowadzanych danych, to znaczy, że baza jest źle zaprojektowana. Sprowadziłeś ją chociaż do 3 PN?

0

Potrzeba jest banalna - i wlasnie dlatego chce skorzystac z najprostszego rozwiazania. Potrzebuje 1 tabele, rozrastajacą się w X i Y. Jeju, malo programowalem do tej pory baz danych.. ale jezeli sa problemy nawet z rozszerzeniem Y (kolumn tabeli) to co to bedzie pozniej :P!!!! Az strach pomyslec.....

Coz.. byc moze bede musial cos wykombinowac.. kilka tabel.. czy cos...

0

To zrób tabelę z dwoma kluczami X i Y oraz jakimś polem :)

0

Wierzcie mi, że zmiana struktur tabeli często jest potrzebna - w moim przypadku np. po jakiejkolwiek zmianie przepisów często muszę zwiększać ilośc pól (przykład - formularze PIT co roku mają inne pola, dochodzą nowe podatki itd). Nie zawsze nowe pola muszą być zainicjowane - np dane dotyczące starego roku nie wymagają wypełnienia pól, które poprzednio obowiązywały. Programowa zmiana struktury jest koniecznością użytkownik tylko odpala program, czynnik ludzki zostaje wykluczony ;) - procedura otwierająca porównuje strukturę z definicja i sprawdza indeksy. Jeśli w tabeli nie ma zdefiniowanych pól - tworzy się plik zgodny z definicją i append from dotychczasowy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1