Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Prism Delphi.Net und Firebird embedded (https://www.delphipraxis.net/49602-delphi-net-und-firebird-embedded.html)

meierotto 13. Jul 2005 15:33

Datenbank: Firebird 1.5 • Zugriff über: Firebird .Net Dataprovider

Delphi.Net und Firebird embedded
 
Hallo ihr,

ich möchte eine kleine Datenbank nutzen und habe mich für Firebird embedded entschieden. Desweitern soll es eine .Net-Anwendung werden. Leider scheitere ich schon bei den ersten Schritten, z.B. was ich in der Uses-Klausel angeben muss, um fbConnection nutzen zu können. Gibt es vielleicht ein Tutorial zu diesem Thema?

Vielen Dank für eure hilfreichen Antworten!

Robert_G 13. Jul 2005 15:36

Re: Delphi.Net und Firebird embedded
 
Uses Clause? :shock: Sowas braucht man doch in .Net nicht mehr. Wenn dann definiert man sich dort nur die Namespaces, deren Klassen man direkt (ohne den NameSpace voranstellen zu müssen) verwenden will.
Beim FbProvider ist eine Hilfe datei dabei, die sollte eigentlich alles nötige erklären.
.Net basics wirst du da nicht finden, aber eine neue Plattform lernt man ja auch nicht indem man gleich eine DB Anwendung schreibt. :zwinker:
Viele kleine schritte bringen einen oft weiter als ein großer Stolperer. :mrgreen:

meierotto 13. Jul 2005 15:48

Re: Delphi.Net und Firebird embedded
 
Du hast schon Recht, mit dem Stolpern. Aber manchmal wird man dazu gezwungen. Vielleicht wäre es ja möglich, ein kleines Beispiel zu geben, damit lernt es sich am Besten.

meierotto 14. Jul 2005 07:34

Re: Delphi.Net und Firebird embedded
 
Hallo Delphianer,

solltest du voller Erwartung auf dieses Thema gestoßen sein, bist du nun sicherlich sehr enttäuscht. Ich habs mir auch anders vorgestellt. Also bitte nicht missverstehen - ich erhebe keinenerlei Anspruch darauf, dass mir auf eine Frage geholfen werden muss. Auch weiß ich, dass kleine Schritte oft eher zum Ziel führen. Aber mal ehrlich, solche Aussagen wie
Zitat:

Uses Clause? Sowas braucht man doch in .Net nicht mehr.
oder
Zitat:

..., aber eine neue Plattform lernt man ja auch nicht indem man gleich eine DB Anwendung schreibt.
sind zwar höflich formuliert, aber bringen einen doch wirklich nicht weiter. Es wäre manchem Besucher sicherlich mehr geholfen, wenn auf eine, wie in meinem Fall, zweifelhaft formulierte Frage vielleicht ein paar Erläuterungen mehr kommen würden.
Sorry Robert_G, ist nicht böse gemeint, soll eher 'ne konstruktive Kritik sein.

Ich schließe die Frage, obwohl nicht beantwortet, ab :(

Robert_G 14. Jul 2005 07:48

Re: Delphi.Net und Firebird embedded
 
Zitat:

Zitat von meierotto
Sorry Robert_G, ist nicht böse gemeint, soll eher 'ne konstruktive Kritik sein.

Fasse ich auch nicht böse auf.

Ich hoffte nur, dass sich auch mal ein anderer findet, der bei solchen Themen antwortet.
Da ich eine andere .Net-Sprache verwende würde ich nur ungern Beispiele bringen, die vielleicht falsch sind.

Tom70 14. Jul 2005 09:06

Re: Delphi.Net und Firebird embedded
 
Delphi-Quellcode:
using System.Data;
?

Master_BB 15. Jul 2005 10:43

Re: Delphi.Net und Firebird embedded
 
ich versuche derzeit auch mit Delphi 2005 .NET einen kleine Firebird testapplication zu schreiben.
connection zu meiner datenbank bekomm ich. ich weiß bloß nicht wie ich dann an die daten komme.
mit der data adapter oder so.

bzgl der frage bei mir packt er beim einsetzten der FB komponenten automatisch die
uses units ein. fall du die fb komponenten nicht in der ToolBox siehst
mußt du mal unter Component - Installed .NET Components gehen
da dann auf Assembly Search paths da trägst du den pfad ein wo die installierten komponenten dlls liegen. dann startest du delphi neu und gehst wieder dahin.
dann unter .NET Components müßten diese FB teile in der großen liste sein die
hackst du alle an und schwupp hast du sie in der Tool Leiste.

und in meiner testapp wo ich nur die FB Connection und FB DataAdapter mit
DataGrid hab siehst die Uses Tabelle so aus

Delphi-Quellcode:
uses
  System.Drawing, System.Collections, System.ComponentModel,
  System.Windows.Forms, System.Data, FirebirdSql.Data.Firebird;
wenn jemand ne testapp hinbekommt posten

Tom70 15. Jul 2005 11:08

Re: Delphi.Net und Firebird embedded
 
Also ich hab nun auch mal schnell ne App gebastelt die mir die Daten in einem Grid anzeigt:

fbConnection1
fbDataAdapter1

dataset über den Adapter generieren (bei mir BuecherDS)

Grid auf die Form --> mit BuecherDS verbinden

Button auf die Form mit onClick Ereignis
Delphi-Quellcode:
procedure TWinForm2.Button1_Click(sender: System.Object; e: System.EventArgs);
begin
  fbDataAdapter1.Fill(BuecherDS);
end;
Iss wohl die einfachste Form das zu machen, aber es funktioniert :)

Uses List
Delphi-Quellcode:
uses
  System.Drawing, System.Collections, System.ComponentModel,
  System.Windows.Forms, System.Data, FirebirdSql.Data.Firebird,
  System.Globalization;
Grüße,
Tom

kiar 15. Jul 2005 11:40

Re: Delphi.Net und Firebird embedded
 
folgendes sollte es hier etwas weiter bringen:
Delphi-Quellcode:
public WinForm()
      {
         //
         // Erforderlich für die Unterstützung des Windows-Form-Designer
         //
         InitializeComponent();
         string Conn = "User=SYSDBA;Password=masterkey;"+
                    "Database=C:\\Projekte\\Datenbank\\Samples.fdb;"+
                    "DataSource=localhost;Port=3050;"+
                    "Dialect=3;Charset=NONE;"+
                    "Role=;Connection lifetime=15;"+
                    "Pooling=true;MinPoolSize=0;"+
                    "MaxPoolSize=50;Packet Size=8192;ServerType=0";
         string Comd = "SELECT ID, PLZ, STADT FROM Postleitzahlen";

         fba = new FbDataAdapter(Comd, Conn);
         fbc = new FbCommand(Comd);
         ds = new DataSet();
         dt = new DataTable();


         fba.Fill(ds, "Postleitzahlen");
         dt = ds.Tables["Postleitzahlen"];
         ItemWithIdCollection itemCollection = new ItemWithIdCollection();

         itemCollection.Add(" nichts", 1);
         itemCollection.Add("zwei", 1);
         itemCollection.DisplayFormat = "{0} :{1}";
         comboBox1.DataSource = itemCollection;
sagt nicht es läuft nicht :mrgreen: das kann auch nicht ,ich habe nur den relevanten teil rauskopiert wie und womit mann auf eine DB mit dem netprovider zugreifen kann.

@Robert: ich weis das Code vom GUI trennt :mrgreen: das hier waren meine ersten Test's mit dem provider

raik

sagt mir mal einer wie ich das mit den geschweiften klammern machen kann, bei diesem Code :gruebel: :gruebel:

Robert_G 15. Jul 2005 11:57

Re: Delphi.Net und Firebird embedded
 
Zitat:

Zitat von Master_BB
wenn jemand ne testapp hinbekommt posten

Irgendwas möglichst grundlegendes?
Ich kann nur empfehlen die ADO.Net Interfaces zu benutzen.
Einfach eine Connection reinwerfen (zum Beispiel SqlConnection oder FbConnection) und schon gates damit.
Delphi-Quellcode:
function Miep.ReadSomething(connection :IDbConnection, valueForA : Integer) :IDataReader;
var
  command  : IDbCommand;
  parameter : IDataParameter;
begin
  command := connection.CreateCommand();
  command.CommandText := 'SELECT X FROM Y WHERE Z = @A';

  parameter := command.CreateParameter();

  parameter.Value := valueforA;
  parameter.ParameterName := '@A';
  parameter.DbType := DbType.Int32;
 
  command.parameters.Add(parameter);
 
  result := command.ExecuteReader();
end;
Delphi-Quellcode:
[ListBox/DataGrid/ComboBox/...].DataSource := ReadSomething(IrgendeineConnection, 1);
@Raik *ROFL* sehe ich da diese Beispiel-Collection-Klasse, die ich mal irgendwo hingeschludert habe? :lol:


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:24 Uhr.
Seite 1 von 2  1 2      

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