Einzelnen Beitrag anzeigen

strom

Registriert seit: 23. Aug 2008
Ort: Keine Ergebnisse gefunden
290 Beiträge
 
#1

Firebird Database erstellen

  Alt 1. Feb 2015, 09:12
Datenbank: Firebird • Version: 2.1 • Zugriff über: IBC
Hallo,

habe ein Problem, eine DB mit Firebird zu erstellen!
Benutze die Komponente "IBDAC"

Was ist IBDatabase1 ?Diese Komponente finde ich nicht?

Hier ein Beispiel:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  IBDatabase1.DatabaseName := 'GameDB.fdb'; // Was ist IBDatabase1? Diese Komponente gibt es nicht!
  IBDatabase1.Params.Clear;
  IBDatabase1.Params.Add('USER ''SYSDBA'''); // Wenn hier USER_NAME angegeben wird funktioniert es nicht!
  IBDatabase1.Params.Add('PASSWORD ''masterkey'''); // Natürlich "nur" mit Leertaste
  IBDatabase1.Params.Add('PAGE_SIZE 4096');
  IBDatabase1.Params.Add('DEFAULT CHARACTER SET WIN1250');

  IBDatabase1.CreateDatabase;

  IBDatabase1.Connected := false;
  IBDatabase1.Params.Clear;
  IBDatabase1.Params.Add('USER_NAME=SYSDBA'); // Wenn hier USER angegeben wird funktioniert es nicht!
  IBDatabase1.Params.Add('PASSWORD=masterkey'); // Natürlich "nur" mit "="
  IBDatabase1.Connected := true;

  IBTransaction1.Active := true;

  with IBTable1 do begin
    active:=false; // Tablen-Zugriff muss auf jeden Fall geschlossen sein

    TableName:='HIGHSCORE'; // Tabellen Name IN UPPERCASE!!!
                                 // SONST FUNKTIONIERT ES NICHT
    with FieldDefs do begin // Eine kleine Tabelle um Highscores zu speichern...
      clear;
      Add('ID', ftInteger, 0, false); // AUTOINC Gibt es nicht, folgt später!!!
      Add('Game', ftString, 20, false);
      Add('UserID', ftString, 8, false);
      Add('PlayScore', ftInteger, 0, false);
      Add('PlayLevel', ftInteger, 0, false);
      Add('Playername', ftString, 40, false);
      Add('PlayerURL', ftString, 80, false);
      Add('PlayereMail', ftString, 80, false);
      Add('PlayerMessenger', ftString, 80, false);
      Add('Datum', ftDateTime, 0, false); // NICHT ETWAR TIMESTAMP das gibt es nicht...
    end;
    CreateTable;
  end;
  Mit Zitat antworten Zitat