Registriert seit: 4. Mai 2005
846 Beiträge
Delphi 7 Enterprise
|
Absolute Database - Memo Text ?
3. Feb 2009, 20:59
Datenbank: Absolute Database • Version: ? • Zugriff über: ?
Hallo Leute !
Ich hab ehrlich gesagt keinen Blassen von Datenbanken deshalb hab ich mir
einmal ein Beispiel aus dem net gezogen aber das hilft mir nicht wirklich weiter.
Könnte mir jemand der sich mit Absolute Database auskennt erklären wie ich zu den Edits ein Memotext speichern und auslesen kann.
Hier der Quelltext - Datei anbei.
Delphi-Quellcode:
unit Unit_main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Db, ABSMain, Grids, DBGrids, Mask, DBCtrls, ExtCtrls;
type
TForm1 = class(TForm)
ABSDatabase1: TABSDatabase;
ABSTable1: TABSTable;
ABSQuery1: TABSQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
GroupBox1: TGroupBox;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
DBEdit9: TDBEdit;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
DBEdit12: TDBEdit;
DBEdit13: TDBEdit;
DBEdit14: TDBEdit;
DBEdit15: TDBEdit;
DBEdit16: TDBEdit;
DBEdit17: TDBEdit;
DBEdit18: TDBEdit;
DBEdit19: TDBEdit;
DBEdit20: TDBEdit;
DBEdit21: TDBEdit;
DBEdit22: TDBEdit;
DBEdit23: TDBEdit;
DBEdit24: TDBEdit;
DBEdit25: TDBEdit;
DBEdit26: TDBEdit;
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;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label24: TLabel;
Label25: TLabel;
Label26: TLabel;
Label27: TLabel;
Label28: TLabel;
Button2: TButton;
DBNavigator1: TDBNavigator;
Button1: TButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure ABSQuery1BeforeInsert(DataSet: TDataSet);
procedure FormShow(Sender: TObject);
procedure DBGrid1TitleClick(Column: TColumn);
private
{ Private-Deklarationen }
pw_ok : boolean;
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ABSQuery1.Close;
if ABSDatabase1.Connected then ABSDatabase1.Connected := false;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
groupbox1.Visible := not groupbox1.Visible;
if groupbox1.Visible then
begin
Button2.Caption := ' Liste zeigen';
DBGrid1.visible := false;
end else
begin
Button2.Caption := ' Eingabe zeigen';
DBGrid1.visible := true;
end
end;
procedure TForm1.FormCreate(Sender: TObject);
var vorhanden : boolean;
begin
PW_OK := false;
DBGrid1.Visible := false;
GroupBox1.visible := true;
Button2.caption := ' Liste zeigen';
ABSDatabase1.DatabaseName := ' DB'; // unique name used further to identify db
ABSDatabase1.DatabaseFileName := ExtractFilepath(Paramstr(0))+' mydata.hp';
if ( not ABSDatabase1.Exists) then vorhanden := false
else vorhanden := true;
if ( not vorhanden) then
begin
ShowMessage(' Es wurde keine Datenbankdatei '+ExtractFilepath(Paramstr(0))+' mydata.hp gefunden.'+#10+
' Neue Datei wird angelegt');
ABSDatabase1.Password := inputbox(' Passwort',' erst einmal ein Passwort vergeben:',' ')
end
else
ABSDatabase1.Password := inputbox(' Passwort',' Passwort:',' ');
if length(ABSDatabase1.Password) < 3 then
begin
ShowMessage(' Passwort muss mindestens 3 Zeichen enthalten');
PW_OK := false;
end else PW_OK := true;
if vorhanden AND PW_OK then
begin
try
ABSDatabase1.Connected := true;
except
ShowMessage(' netter Versuch');
if ( not ABSDatabase1.Connected) then
Application.Terminate;
end;
end;
if ( not vorhanden) and PW_OK then
begin
ABSDatabase1.CreateDatabase;
ABSDatabase1.Connected := true;
// Tabelle anlegen begin
with ABSTable1 do
begin
Tablename := ' daten';
Databasename := ' DB';
with FieldDefs do
begin
Clear;
Add(' EmpNo',ftAutoInc,0,False);
Add(' Bezeichnung',ftString,100,False);
Add(' Firma',ftString,50,False);
Add(' Telefonnummer',ftString,50,False);
Add(' Mobilnummer',ftString,50,False);
Add(' Ort',ftString,50,False);
Add(' PLZ',ftString,50,False);
Add(' Strasse',ftString,50,False);
Add(' Postfach',ftString,50,False);
Add(' Ansprechperson',ftString,50,False);
Add(' Kontonummer',ftString,50,False);
Add(' BLZ',ftString,50,False);
Add(' Emailadresse',ftString,50,False);
Add(' Webseite',ftString,50,False);
Add(' Kundennummer',ftString,50,False);
Add(' Zugangsname',ftString,50,False);
Add(' Passwort',ftString,50,False);
Add(' Vetragsbeginn',ftDate,0,False);
Add(' Vertragsende',ftDate,0,False);
Add(' Kündigungstermin',ftDate,0,False);
Add(' gekündigt',ftDate,0,False);
Add(' Kündigungsbestätigung',ftDate,0,False);
Add(' Vertragsnummer',ftString,50,False);
Add(' Handynummer',ftString,50,False);
Add(' Kosten_monatlich',ftCurrency,0,False);
Add(' Kosten_vierteljährlich',ftCurrency,0,False);
Add(' Kosten_jährlich',ftCurrency,0,False);
end;
end;
with ABSTable1 do
if not Exists then
CreateTable;
// Tabelle anlegen end
end; // if not vorhanden
ABSQuery1.DatabaseName := ' DB';
ABSQuery1.SQL.Text := ' select * from daten order by Bezeichnung asc';
ABSQuery1.Open;
ABSQuery1. ReadOnly := false;
ABSQuery1.RequestLive := true;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
close;
end;
procedure TForm1.ABSQuery1BeforeInsert(DataSet: TDataSet);
begin
if groupbox1.Visible then DBEdit1.SetFocus;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
if ( not PW_OK) then close;
end;
procedure TForm1.DBGrid1TitleClick(Column: TColumn);
begin
ABSQuery1.close;
if pos(' asc',ABSQuery1.SQL.Text) > 0 then
ABSQuery1.SQL.Text := ' select * from daten order by '+Column.Title.Caption+' desc'
else
ABSQuery1.SQL.Text := ' select * from daten order by '+Column.Title.Caption+' asc';
ABSQuery1.Open;
// ShowMessage(ABSQuery1.SQL.Text);
end;
end.
Blackheart
|