Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Zugriffsverletzung bei SQL Abfrage (mit Params)

  Alt 23. Sep 2006, 14:40
Hallo Sven,

einen Fehler an deinem SELECT-Statement kann ich auch nicht entdecken. Die genaue Code-Zeile, bei der die Zugriffsverletzung auftritt, hast du leider nicht angegeben. "Lesen von Adresse 0000" ist ein Zeichen dafür, dass ein Zeiger nicht initialisert war. Vielleicht trotzdem noch ein paar Hinweise:

Delphi-Quellcode:
const
  SECTION_NAME = 'SQL';
  KEY_NAME = 'SQLS';
  PARAM_NAME = 'SF1';

procedure TForm1.Button3Click(Sender: TObject);
var
  ini: TMemIniFile;
  fn: TFileName;
  stmt: String;
begin
  with ListBox3 do
    fn := DatenPfad + Items[ItemIndex];

  with TMemIniFile.Create(fn) do
  try
    stmt := ReadString(SECTION_NAME, KEY_NAME, '');
    ShowMessage(stmt); // ist da wirklich ein Parameter SF1 drin?
  finally
    Free;
  end;

  with Query1 do
  begin
    // Close; // nicht nötig, weil SQL.Text neu gesetzt wird
    // SQL.Clear; // überflüssig weil SQL.Text als Ganzes verändert wird
    SQL.Text := stmt;
    // Query1.ParamCheck := True; // nur einmal im OI setzen
    ParamByName('SF1').AsString := S1SF1.Text;
    Open;
  end;
end;
Wichtig ist, dass wirklich die richtige INI-Datei geöffnet wird - nämlich die, welche du im Editor verändert hast.

Grüße vom marabu
  Mit Zitat antworten Zitat