AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Probleme mit mysql und zquery (zeoslib)
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme mit mysql und zquery (zeoslib)

Ein Thema von WS1976 · begonnen am 29. Dez 2007 · letzter Beitrag vom 31. Dez 2007
Antwort Antwort
Seite 3 von 4     123 4      
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#21

Re: Probleme mit mysql und zquery (zeoslib)

  Alt 30. Dez 2007, 11:45
Das Feld "Extra" scheint wirklich auf Systemtabellen hinzudeuten.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
WS1976
(Gast)

n/a Beiträge
 
#22

Re: Probleme mit mysql und zquery (zeoslib)

  Alt 30. Dez 2007, 11:46
Hallo,
mysql 5.1 keine Beta.
Zeoslib 6.0.1 ist zwar Beta habs aber auch schon mit einer früheren Version versucht genau das gleiche Resultat.

Grüsse
Rainer
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#23

Re: Probleme mit mysql und zquery (zeoslib)

  Alt 30. Dez 2007, 11:48
Nach den Ergebnissen fragt er auch eine ab. Zeig mal den gesamten Code
Markus Kinzler
  Mit Zitat antworten Zitat
WS1976
(Gast)

n/a Beiträge
 
#24

Re: Probleme mit mysql und zquery (zeoslib)

  Alt 30. Dez 2007, 12:01
Hallo,

folgender Ablauf:
Delphi-Quellcode:
   qrmain.Active:=true;
-->
procedure TZAbstractRODataset.InternalOpen;
var
  ColumnList: TObjectList;
begin
  CheckSQLQuery;
  CheckConnected;

  CurrentRow := 0;
  FetchCount := 0;
  CurrentRows.Clear;

  Connection.ShowSQLHourGlass;
  try
    { Creates an SQL statement and resultsets }
    if FSQL.StatementCount> 0 then
      ResultSet := CreateResultSet(FSQL.Statements[0].SQL, -1)
    else
      ResultSet := CreateResultSet('', -1);
    if not Assigned(ResultSet) then
    begin
      if not (doSmartOpen in FOptions) then
        raise Exception.Create(SCanNotOpenResultSet)
      else Exit;
    end;

    { Initializes field and index defs. }
    InternalInitFieldDefs;

    if DefaultFields and not FRefreshInProgress then
      CreateFields;
    BindFields(True);

    { Initializes accessors and buffers. }
    ColumnList := ConvertFieldsToColumnInfo(Fields);
    try
      RowAccessor := TZRowAccessor.Create(ColumnList);
    finally
      ColumnList.Free;
    end;
    FOldRowBuffer := PZRowBuffer(AllocRecordBuffer);
    FNewRowBuffer := PZRowBuffer(AllocRecordBuffer);

    FieldsLookupTable := CreateFieldsLookupTable(Fields);
    InitFilterFields := False;

    IndexFields.Clear;
    GetFieldList(IndexFields, FLinkedFields); {renamed by bangfauzan}

    { Performs sorting. }
    if FSortedFields <> 'then
      InternalSort;
  finally
    Connection.HideSQLHourGlass;
  end;
end;
bei InternalInitFieldDefs;

Delphi-Quellcode:
procedure TZAbstractRODataset.InternalInitFieldDefs;
var
  I, J, Size: Integer;
  AutoInit: Boolean;
  FieldType: TFieldType;
  ResultSet: IZResultSet;
  FieldName: string;
  FName: string;
begin
  FieldDefs.Clear;
  ResultSet := Self.ResultSet;
  AutoInit := ResultSet = nil;

  try
    { Opens an internal result set if query is closed. }
    if AutoInit then
    begin
      CheckSQLQuery;
      CheckConnected;
      ResultSet := CreateResultSet(FSQL.Statements[0].SQL, 0);
    end;
    if not Assigned(ResultSet) then
      raise Exception.Create(SCanNotOpenResultSet);

    { Reads metadata from resultset. }

    with ResultSet.GetMetadata do
    begin
      if GetColumnCount > 0 then for I := 1 to GetColumnCount do
      begin
---->>>> hier wird Exception ausgelöst:
        FieldType := ConvertDbcToDatasetType(GetColumnType(I));

        if FieldType in [ftString, ftWidestring, ftBytes] then
          Size := GetPrecision(I)
        else Size := 0;

        J := 0;
        FieldName := GetColumnLabel(I);
        FName := FieldName;
        while FieldDefs.IndexOf(FName) >= 0 do
        begin
          Inc(J);
          FName := Format('%s_%d', [FieldName, J]);
        end;

        with TFieldDef.Create(FieldDefs, FName, FieldType,
          Size, False, I) do
        begin
          {$IFNDEF FPC}
{$IFNDEF FOSNOMETA}
          Required := IsWritable(I) and (IsNullable(I) = ntNoNulls);
{$ENDIF}
          {$ENDIF}
{$IFNDEF FOSNOMETA}
          if IsReadOnly(I) then Attributes := Attributes + [faReadonly];
          Precision := GetPrecision(I);
{$ENDIF}
          DisplayName := FName;
        end;
      end;
    end;

  finally
    { Closes localy opened resultset. }
    if AutoInit then
    begin
      if ResultSet <> nil then
      begin
        ResultSet.Close;
        ResultSet := nil;
      end;
      if Statement <> nil then
      begin
        Statement.Close;
        Statement := nil;
      end;
    end;
  end;
end;
Grüsse Rainer (ich weiss dass das ne Zumutung ist aber besser krieg ichs nicht hin)
  Mit Zitat antworten Zitat
WS1976
(Gast)

n/a Beiträge
 
#25

Re: Probleme mit mysql und zquery (zeoslib)

  Alt 31. Dez 2007, 10:44
Hallo,
ich habe gegooglt und habe festgestellt, dass Andere das gleiche Problem haben.
Offensichtlich hängt das mit der Zeos-Version und dem benutzten Mysql ab.
Weitere Informationen wenn ich mehr herausgefunden habe.
Rainer
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.202 Beiträge
 
Delphi 10.4 Sydney
 
#26

Re: Probleme mit mysql und zquery (zeoslib)

  Alt 31. Dez 2007, 10:57
Zitat von WS1976:
mysql 5.1 keine Beta.
Und wo siehst du das? Ich sehe das es der Development-Zweig ist und damit Beta bzw. RC. Die 6.0er sind die Alpha-Versionen und gar nicht zu gebrauchen für Produktivsystem
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
WS1976
(Gast)

n/a Beiträge
 
#27

Re: Probleme mit mysql und zquery (zeoslib)

  Alt 31. Dez 2007, 11:33
OK Bernhard,

du hast recht. Ich habe das aber nicht aus dem Developer-Zweig geholt.
Nur am Dateinamen kann man erkennen, dass das eine RC Version ist.

Danke für den Hinweis.
Rainer
Guten Rutsch!
  Mit Zitat antworten Zitat
WS1976
(Gast)

n/a Beiträge
 
#28

Re: Probleme mit mysql und zquery (zeoslib)

  Alt 31. Dez 2007, 14:26
Hallo,

der Fehler tritt nicht mehr auf seit ich die Version 5.0 von Mysql installiert habe.
Noch eine Bemerkung:
Es wird einem nicht allzu leicht gemacht auf der MYSQL Homepage.
Dies waren meine ersten Erfahrungen mit MYsql und die waren so, dass ich zumindest
was den professionellen Bereich ( in meiner Firma ) betrifft stärkste Bedenken hätte
es einzusetzen.
Aber nicht weils vielleicht nicht funktioniert, aber dieser Versionsdurcheinander ist
schon extrem.
Vor allem weil man Hellseher sein muss um herauszufinden mit was man arbeitet.

Grüsse
Rainer
Für alle DP'ler einen guten Rutsch
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#29

Re: Probleme mit mysql und zquery (zeoslib)

  Alt 31. Dez 2007, 14:32
Ich würde Dir auch eher zu Firebird raten.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.202 Beiträge
 
Delphi 10.4 Sydney
 
#30

Re: Probleme mit mysql und zquery (zeoslib)

  Alt 31. Dez 2007, 15:05
Zitat von WS1976:
Aber nicht weils vielleicht nicht funktioniert, aber dieser Versionsdurcheinander ist
schon extrem.
Wieso? Es gibt eine 6er-Version als Alpha, 5.1er als Beta/RC, 5.0 als aktiven Zweig und dann Altversionen.

Ungünstiger ist das der Support/Bereitstellung von vorkompilierten Versionen fast zum erliegen gekommen ist. Bis vor kurzen wurden wenigsten Builds bereitgestellt wenn Sicherheitlücken gefixt wurden.

Aber man will ja verstärkt unser bestes - unser Geld. Viele SW-Entwickler werden gar nicht wissen das sie ein kostenpflichtige Lizenz kaufen müssen sobald sie z.B. die libmysql.dll mit ihren Programm verteilen und ihr Programm nicht als Sourcecode zur verfügung gestellt wird.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:31 Uhr.
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