Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Access - Während der Laufzeit eine neue Spalte hinzufügen (https://www.delphipraxis.net/130620-access-waehrend-der-laufzeit-eine-neue-spalte-hinzufuegen.html)

Boy2melo 11. Mär 2009 10:57

Datenbank: Microsoft Access • Version: 2003 • Zugriff über: Netzwerk - ADOConnection

Access - Während der Laufzeit eine neue Spalte hinzufügen
 
Hallo alle zusammen.

Ich bin gerade dabei ein Registrierungsprogramm zu schreiben. Das Programm soll während der Laufzeit eine neue Spalte in die Datenbank einfügen. Kann mir irgendjmd helfen? Vielen Dank.

Boy2

hoika 11. Mär 2009 10:59

Re: Access - Während der Laufzeit eine neue Spalte hinzufüge
 
Hallo,

per SQL.

SQL-Code:
Alter Table Tabellen_Name Add Feld_Name Char(20);

Heiko

Boy2melo 11. Mär 2009 11:09

Re: Access - Während der Laufzeit eine neue Spalte hinzufüge
 
Vielen Dank.

Ich habe jedoch ncoh nie mit SQL gearbeitet. Wie kann einen SQL-Code einbinden? Im moment zeigt es bei mir immer noch an, dass 'Alter', 'Table', usw. undefinierte bezeichner sind.

hoika 11. Mär 2009 12:39

Re: Access - Während der Laufzeit eine neue Spalte hinzufüge
 
Hallo,

zeig, doch mal was du hast.

Du brauchst auf jeden Fall ein ADOCommand,
etwa so

ADOCommand.Connection:= AdoConnection;
ADOCommand.CommandText:= 'Alter table ...');
ADOCommand.Execute;


Heiko

Boy2melo 11. Mär 2009 13:20

Re: Access - Während der Laufzeit eine neue Spalte hinzufüge
 
Also:

Ich benütze eine ADOTable mit dem namen 'TDatabase'. Diese ist natürlich an eine ADOConnection gebunden. Wenn das Formular aufgerufen wird, importiert das Programm die derzeitigen Werte der Datenbank in eine Listbox (Das klappt). Nun soll es danach eine neue Spalte in die Datenbank einfügen:

Delphi-Quellcode:
procedure TFRegistration.FormActivate(Sender: TObject);
begin
  TDatabase.open;
  LBResults.clear;

  TDatabase.First;
  while not TDatabase.Eof do                            //Importiert die Datenbank in eine Listbox
    begin
      LBResults.Items.Add(TDatabase.FieldByName('Name').AsString + ' ' + TDatabase.FieldByName('Surname').AsString + ' - ' + TDatabase.FieldByName('D/Base').AsString);              //Name Nachname - Primärschlüssel
      TDatabase.Next;
    end;
end;
Vielen Dank
Boy2


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz