Einzelnen Beitrag anzeigen

AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#1

Klasse die mit DB verbindet erstellen?

  Alt 21. Aug 2015, 17:22
Delphi-Version: 5
Hallo,

ich möchte mich mehr mit Klassen bzw. Objekten beschäftigen und schreibe gerade eine Klasse, die meine Anwendung mit der SQLite DB verbinden soll. Aber irgendwie habe ich noch eine Wissenslücke. Die Variablen "SQLite3Connection", "SQLTransaction", "SQLQuery" wollen nicht createt werden. Der Fehler lautet:
Zitat:
myobj.pas(29,54) Error: Incompatible type for arg no. 1: Got "TSQLiteDB", expected "TComponent"
Kann mir da jemand auf die Sprünge helfen? Danke!

Delphi-Quellcode:
unit myobj;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, sqlite3conn, sqldb;

type

  { TSQLiteDB }
  TSQLiteDB = class
    procedure Connect;
  end;

var
  SQLiteDB: TSQLiteDB;

  SQLite3Connection: TSQLite3Connection;
  SQLTransaction: TSQLTransaction;
  SQLQuery: TSQLQuery;

implementation

{ TSQLiteDB }

procedure TSQLiteDB.Connect;
begin
  SQLite3Connection := TSQLite3Connection.Create(Self);
  SQLTransaction := TSQLTransaction.Create(Self);
  SQLQuery := TSQLQuery.Create(Self);

  try
    SQLite3Connection.DatabaseName := ExtractFilePath(Application.ExeName) + 'db.db';
    SQLite3Connection.Params.Add('foreign_keys=on;');
    SQLTransaction.DataBase := SQLite3Connection;
    SQLQuery.Transaction := SQLTransaction;
  except
  end;
end;

end.
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat