So nun nach ein paar Stunden testen mein bissher bestes Ergebnis : (es kompiliert zumindest und startet das Programm
)
Delphi-Quellcode:
namespace TestFirebird;
interface
uses
System.Drawing,
System.Collections,
System.Collections.Generic,
System.Windows.Forms,
System.ComponentModel,
Microsoft.AnalysisServices.AdomdClient;
type
/// <summary>
/// Summary description for MainForm.
/// </summary>
MainForm = partial
class(System.Windows.Forms.Form)
private
method button1_Click(sender: System.
Object; e: System.EventArgs);
protected
method Dispose(disposing: Boolean);
override;
public
constructor;
end;
implementation
{$REGION Construction and Disposition}
constructor MainForm;
begin
//
// Required for Windows Form Designer support
//
InitializeComponent();
//
// TODO: Add any constructor code after InitializeComponent call
//
end;
method MainForm.Dispose(disposing: Boolean);
begin
if disposing
then begin
if assigned(components)
then
components.Dispose();
//
// TODO: Add custom disposition code here
//
end;
inherited Dispose(disposing);
end;
{$ENDREGION}
method MainForm.button1_Click(sender: System.
Object; e: System.EventArgs);
var
tCon: Adomdconnection;
tCommand: AdomdCommand;
ConnectionString:
String;
SQLCommandText:
String;
begin
ConnectionString := "UserID=sysdba;Password=masterkey;" +
"Database=<
ip-adresse>:C:\Firebird\TestDB.FDB; " +
"DataSource=<
ip-adresse>;Charset=NONE;";
tCon := new Adomdconnection(ConnectionString);
tCon.Open();
tCon.BeginTransaction();
SQLCommandText := " INSERT into Details Values('
" + NameBox.Text + "'," + Int32.Parse(AgeBox.Text) + ",'
" + SexBox.Text + "')";
tCommand := new AdomdCommand;
tCommand.CommandText := SQLCommandText;
tCommand.Execute();
end;
end.
Das ist bis jetzt mein bester Versuch mit einer ADOConnection. Mit dem .NET Provider habe ich es schon garnicht kompiliert bekommen, da ich nicht weiß, wie ich den im uses-Bereich einfügen muss. Aber leider auch mit der
ADO-Connection bekomme ich keine Verbindung zum Server hin. Jedesmal beim tCon.Open bricht er ab und läuft auf einen Timeout. Wenn ich mit anderen Programmen drauf zugreifen will, funktioniert es.
Habe ich irgendwas falsch gemacht und wenn ja was ?