AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Newbie braucht Hilfe mit Datenbanken
Thema durchsuchen
Ansicht
Themen-Optionen

Newbie braucht Hilfe mit Datenbanken

Offene Frage von "Daniel"
Ein Thema von JaniJPK · begonnen am 28. Sep 2013 · letzter Beitrag vom 30. Sep 2013
Antwort Antwort
Seite 1 von 3  1 23      
JaniJPK

Registriert seit: 1. Jul 2013
Ort: Rheinland-Pfalz
22 Beiträge
 
Delphi 10 Seattle Professional
 
#1

Newbie braucht Hilfe mit Datenbanken

  Alt 28. Sep 2013, 17:27
Datenbank: sry keine Ahnung? • Version: ? • Zugriff über: sry leine Ahnung :/
Hallo.
Ich will in meinem Programm Daten über Kunden abspeichern.
Meine Oberfläche: (Anhang: Form.jpg)

Mein Quellcode:

Code:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, StdCtrls, Mask, DBCtrls, DB, DBTables, ExtCtrls;

type
  TForm2 = class(TForm)
    MainMenu1: TMainMenu;
    Date1: TMenuItem;
    zurck1: TMenuItem;
    N1: TMenuItem;
    Schlieen1: TMenuItem;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    DBText1: TDBText;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    DBEdit3: TDBEdit;
    DBEdit4: TDBEdit;
    DBEdit5: TDBEdit;
    DBEdit6: TDBEdit;
    DBEdit7: TDBEdit;
    DBEdit8: TDBEdit;
    DBEdit9: TDBEdit;
    DBEdit10: TDBEdit;
    Table1: TTable;
    DataSource1: TDataSource;
    BtnFirst: TButton;
    BtnPrior: TButton;
    BtnNext: TButton;
    BtnLast: TButton;
    CheckBox1: TCheckBox;
    BtnNew: TButton;
    BtnStore: TButton;
    BtnCancel: TButton;
    BtnDelete: TButton;
    procedure Schlieen1Click(Sender: TObject);
    procedure BtnNewClick(Sender: TObject);
    procedure BtnStoreClick(Sender: TObject);
    procedure BtnDeleteClick(Sender: TObject);
    procedure BtnPriorClick(Sender: TObject);
    procedure BtnFirstClick(Sender: TObject);
    procedure BtnNextClick(Sender: TObject);
    procedure BtnLastClick(Sender: TObject);
    procedure BtnCancelClick(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure Table1AfterEdit(DataSet: TDataSet);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private-Deklarationen }
    procedure setButtons(m: Byte);
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation

uses JH_Designs;

{$R *.dfm}
var pos: TBookmark;

procedure TForm2.setButtons(m: Byte);
begin
 case m of
  0: begin BtnNew.Enabled := False; BtnStore.Enabled := False;
     BtnCancel.Enabled := False; BtnDelete.Enabled := False end;
  1: begin BtnNew.Enabled := True; BtnStore.Enabled := False;
     BtnCancel.Enabled := False; BtnDelete.Enabled := True end;
  2: begin BtnNew.Enabled := False; BtnStore.Enabled := True;
     BtnCancel.Enabled := True; BtnDelete.Enabled := False end
 end
end;

procedure TForm2.Schlieen1Click(Sender: TObject);
begin
  Form1.Visible:=True;
  Close;
end;


procedure TForm2.BtnPriorClick(Sender: TObject);  // Zurück
begin
 Table1.Prior;
 BtnLast.Enabled := True; BtnNext.Enabled := True;
 if Table1.BOF then BtnFirstClick(Self)
end;

procedure TForm2.BtnFirstClick(Sender: TObject);   // Erster
begin
 Table1.First;
 BtnLast.Enabled := True; BtnNext.Enabled := True;
 BtnPrior.Enabled := False; BtnFirst.Enabled := False
end;

procedure TForm2.BtnNextClick(Sender: TObject);  // Vorwärts
begin
 Table1.Next;
 BtnFirst.Enabled := True; BtnPrior.Enabled := True;
 if Table1.EOF then BtnLastClick(Self)
end;

procedure TForm2.BtnLastClick(Sender: TObject);  // Letzter
begin
 Table1.Last;
 BtnFirst.Enabled := True; BtnPrior.Enabled := True;
 BtnLast.Enabled := False; BtnNext.Enabled := False
end;

procedure TForm2.BtnNewClick(Sender: TObject);    // Neu
begin
 Table1.Append; setButtons(2)
end;

procedure TForm2.BtnCancelClick(Sender: TObject); // Rückgängig
begin
 Table1.Cancel; Table1.Edit; setButtons(1)
end;

procedure TForm2.CheckBox1Click(Sender: TObject);  // Lese-/Schreibzugriff
begin
 pos := Table1.GetBookmark;                // Position merken
 Table1.Active := False;
 if CheckBox1.Checked = True then          // Schreibschutz
 begin
  Table1.ReadOnly := True;
  setButtons(0)
 end                        else         //  Lesen und Schreiben
 begin
  Table1.ReadOnly := False;
  setButtons(1)
 end;
 Table1.Active := True;
 Table1.GotoBookmark(pos);                 // Position wiederherstellen
end;

procedure TForm2.Table1AfterEdit(DataSet: TDataSet);  // irgendwas eingegeben
begin
 setButtons(2)
end;

procedure TForm2.BtnStoreClick(Sender: TObject);   // Speichern
begin
 Table1.Post; Table1.Edit; setButtons(1)
end;

procedure TForm2.BtnDeleteClick(Sender: TObject);  // Löschen
begin
 if MessageDlg('Wollen Sie den Kunden wirklich löschen?',
    mtWarning,[mbYes, mbNo], 0) = mrYes then
 begin Table1.Delete; Table1.Edit end
end;

procedure TForm2.FormCreate(Sender: TObject);
begin
 setButtons(0)
end;


procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Form1.Visible:=True;
end;

end.
In die Komponente Table1: TTable habe ich bei DataBaseName meinen Dateipfad zu meiner Datei "Kunden.db" angegeben. Und bei TableName "Kunden.db".

Und in die Komponente DataSource1: TDataSource habe ich bei DateSet "Table1" hingeschrieben.

Des weiteren habe ich bei jedem Datenbank-Label oder -Editfeld unter Eigenschaften DataSource "DataSource1" angegeben und unter DataField jedem einen individuellen Namen zugeordnet.

Trotz all dem kommt eine Fehlermeldung.
Kann mir jemand helfen? Am besten wäre es mir per Skype oder Teamspeak damit ich direkt nachfragen beantworten und auch stellen kann.
Ich bedanke mich schon einmal vorneweg für die Antworten
Danke
Miniaturansicht angehängter Grafiken
form.jpg  
JP
  Mit Zitat antworten Zitat
vagtler

Registriert seit: 9. Jul 2010
Ort: Köln
667 Beiträge
 
Delphi 2010 Professional
 
#2

AW: Newbie braucht Hilfe mit Datenbanken

  Alt 28. Sep 2013, 17:32
[...] Trotz all dem kommt eine Fehlermeldung. [...]
Und die ist so geheim, dass Du sie uns nicht mitteilen darfst?...
  Mit Zitat antworten Zitat
JaniJPK

Registriert seit: 1. Jul 2013
Ort: Rheinland-Pfalz
22 Beiträge
 
Delphi 10 Seattle Professional
 
#3

AW: Newbie braucht Hilfe mit Datenbanken

  Alt 28. Sep 2013, 17:43
Sorry. Habe ich vergessen :/

Die Fehlermeldung beim kompilieren auf den Button "Neuer Kunde" drücke ist folgende:
Im Projekt JHDesigns.exe ist eine Exception der Klasse EDatabaseError aufgetreten. Meldung: 'Table1: Operation bei geschlossener Datenmenge nicht ausführbar'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.

Die Fehlermeldung ist wenn ich die .exe ausführe und dann auf den Button drücken ist:
Table1: Operation bei geschlossener Datenmenge nicht ausführbar.
JP
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#4

AW: Newbie braucht Hilfe mit Datenbanken

  Alt 28. Sep 2013, 18:40
Meldung: 'Table1: Operation bei geschlossener Datenmenge nicht ausführbar'.
Und was meinst du nun, was diese Fehlermeldung besagt? Ich würde mal darauf tippen, daß deine Datenmenge nicht geöffnet ist ... oder siehst du das anders?
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#5

AW: Newbie braucht Hilfe mit Datenbanken

  Alt 28. Sep 2013, 20:17
Ich würde mal darauf tippen, daß deine Datenmenge nicht geöffnet ist ... oder siehst du das anders?
Also ich würde sagen, sie ist geschlossen!

  Mit Zitat antworten Zitat
Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#6

AW: Newbie braucht Hilfe mit Datenbanken

  Alt 28. Sep 2013, 20:25
Mal als Tipp an meine zwei Vorposter. Schaut mal in der Zeile über den Beitrag:

Zitat:
Datenbank: sry keine Ahnung? • Version: ? • Zugriff über: sry leine Ahnung :/
Was könntet ihr daraus schließen?

Versetzt euch doch in die Lage von jemandem, der solchen Code schreibt, wie ihr ihn dort sehen könnt.

Liebe Grüße,
Valentin
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat
JaniJPK

Registriert seit: 1. Jul 2013
Ort: Rheinland-Pfalz
22 Beiträge
 
Delphi 10 Seattle Professional
 
#7

AW: Newbie braucht Hilfe mit Datenbanken

  Alt 28. Sep 2013, 20:34
Und welchen Tipp habt ihr für mich? Es ist mein erstes mal wo ich an Datenbankprogrammierung gehe. UNd auf YouTube oder so findet man zu Delphi halt nicht viel
JP
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.381 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Newbie braucht Hilfe mit Datenbanken

  Alt 28. Sep 2013, 21:32
Und welchen Tipp habt ihr für mich?
http://www.delphi-treff.de/tutorials...eg/einleitung/


und falls Du nur einen Tipp willst:

in TForm2.FormCreate(Sender: TObject); ein Table1.open; einfügen


Es ist mein erstes mal wo ich an Datenbankprogrammierung gehe. UNd auf YouTube oder so findet man zu Delphi halt nicht viel
nicht schlimm mit was neuem zu beginnen, aber auf youtube Hilfe zu suchen? Aber vielleicht bin ich einfach schon zu alt...
  Mit Zitat antworten Zitat
JaniJPK

Registriert seit: 1. Jul 2013
Ort: Rheinland-Pfalz
22 Beiträge
 
Delphi 10 Seattle Professional
 
#9

AW: Newbie braucht Hilfe mit Datenbanken

  Alt 28. Sep 2013, 21:57
@ Lemmy

Danke für den Tipp

Aber jetzt kommt eine neue Fehlermeldung und jetzt schon beim kompilieren:
Im Projekt JHDesigns.exe ist eine Exception der Klasse EDatabaseError aufgetreten. Meldung: 'DBEdit10: Das Feld 'DBPW' wurde nicht gefunden'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
JP
  Mit Zitat antworten Zitat
Benutzerbild von scrat1979
scrat1979

Registriert seit: 12. Jan 2007
Ort: Sulzbach a.d. Murr
1.029 Beiträge
 
Delphi 10.4 Sydney
 
#10

AW: Newbie braucht Hilfe mit Datenbanken

  Alt 28. Sep 2013, 23:31
@ Lemmy

Danke für den Tipp

Aber jetzt kommt eine neue Fehlermeldung und jetzt schon beim kompilieren:
Im Projekt JHDesigns.exe ist eine Exception der Klasse EDatabaseError aufgetreten. Meldung: 'DBEdit10: Das Feld 'DBPW' wurde nicht gefunden'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
Steht doch schon in der Fehlermeldung drin

Du greifst auf ein Feld (auch "Spalte" der Datenbank) zu, dessen Name "DBPW" nicht existiert (z.B. Table1.FieldByName('DBPW').xx). Tippfehler?

Anbei noch eine Bemerkung bzw. Tipp - falls es noch nicht geschrieben wurde: Benenne doch Deine Komponenten richtig, dann wird der Code gleich viel übersichtlicher (z.B: DBEdtVorname, DBEdtNachname statt Edit1, Edit2) und Fehler lassen sich daher doch hin und wieder leichter finden...


Grüsse,
Michael
Michael Kübler

Geändert von scrat1979 (28. Sep 2013 um 23:33 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz