AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi [MySQL] Wie bekomme ich '\' ins Record?
Thema durchsuchen
Ansicht
Themen-Optionen

[MySQL] Wie bekomme ich '\' ins Record?

Ein Thema von Akut-Programming · begonnen am 10. Sep 2004 · letzter Beitrag vom 10. Sep 2004
Antwort Antwort
Seite 1 von 2  1 2      
Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#1

[MySQL] Wie bekomme ich '\' ins Record?

  Alt 10. Sep 2004, 09:39
Hi,

folgendes Problem. Ich will Pfadangaben in einer MySQL Tabelle speichern. Als ich einfach nur den übergebenen String eingefügt hatte, waren keine '\' mehr vorhanden. Da dacht ich mir, das er das beim einfügen falsch übergeben bekommen hat bzw. die '\' wegschneidet. Also habe ich mit StringReplace gearbeitet um die '\' durch '\\' zu ersetzen. Aber dann konnt ich sehen, das es da auch nich ging - Delphi hat damit also nichts zu tun, sondern handelt MySQL das irgendwie. (Glaube ich ) - Kann mir jemand vielleicht sagen, wie ich die '\' meines übergebenen Pfades nun doch da rein bekomme. - Ich will die Dateien aus meiner Anwendung aus starten lassen und dazu brauch ich die komplette Pfadangabe.

Gruß,
Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: [MySQL] Wie bekomme ich '\' ins Record?

  Alt 10. Sep 2004, 09:45
Hai Akut,

ich kann das so nicht nachvollziehen. Wie speicherst Du die Pfade denn?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#3

Re: [MySQL] Wie bekomme ich '\' ins Record?

  Alt 10. Sep 2004, 10:03
hier mal mein Code fürs einfügen..
Delphi-Quellcode:
ChangedFilepath:=StringReplace(frmMain.OpenDialog1.FileName,'\\','\',[rfReplaceAll, rfIgnoreCase]);

cmdInsertFile.CommandText:='insert into files_tbl values('''+SelectetName+''', '''+frmFiletitel.edFiletitel.Text+''', '''+ChangedFilepath+''')';
[EDIT]Wenn ich die Pfadangaben nun wieder auslese bzw. sie mir in der DB anschaue, steht da z.B. nur 'C:TempThisFile.exe[/EDIT]
Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#4

Re: [MySQL] Wie bekomme ich '\' ins Record?

  Alt 10. Sep 2004, 10:07
Wie greifst Du denn auf den mySQL zu?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#5

Re: [MySQL] Wie bekomme ich '\' ins Record?

  Alt 10. Sep 2004, 10:09
Hai Sharky,

über ODBC, wenn du das meinst.. und das ist der Code für die Abfrage der Dateien aus der DB..
Delphi-Quellcode:
procedure TfrmMain.LoadFileList(Anwendung: String);
var
   i: integer;
   ListItem: TListItem;
begin
     lvFiles.Items.Clear;
     SelectetName:=Anwendung;

     dstGetFilelist.Active:=false;
     dstGetFilelist.CommandText:='select * from files_tbl where projekt ='''+Anwendung+'''';
     dstGetFilelist.Active:=true;
     dstGetFilelist.first;

     for i:=0 to dstGetFilelist.RecordCount-1
     do begin
        ListItem:=lvFiles.Items.Add;
        ListItem.Caption:=dstGetFilelist.Fields.Fields[1].AsString;
        ListItem.SubItems.Add(StringReplace(dstGetFilelist.Fields.Fields[2].AsString,'\\','\',[rfReplaceAll, rfIgnoreCase]));
        dstGetFilelist.Next;
     end;
end;
Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#6

Re: [MySQL] Wie bekomme ich '\' ins Record?

  Alt 10. Sep 2004, 10:13
Ich verwende für mySQL die Zeos-Komponenten. Wenn ich mit diesem Code arbeite werden alle Pfade so in die Tabelle geschrieben wie ich es möchte:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  if (OpenDialog1.Execute) then
  begin
    with ZQuery1 do
    begin
      Close;
      SQL.Text := 'INSERT INTO meintest VALUES (null,:pfad)';
      ParamCheck := True;
      ParamByName ('pfad').AsString := OpenDialog1.FileName;
      ExecSql;
    end;
  end;
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#7

Re: [MySQL] Wie bekomme ich '\' ins Record?

  Alt 10. Sep 2004, 10:18
Ich nutze die ADO Komponenten.. habs jetzt mal versucht, den Code darauf umzustellen, da bekomme ich aber die Meldung, das ParamByName ein undefinierter Bezeichner ist.
Delphi-Quellcode:
cmdInsertFile.CommandText:='insert into files_tbl values('''+SelectetProject+''', '''+frmFiletitel.edFiletitel.Text+''', :pfad)';
cmdInsertFile.ParamCheck:=true;
cmdInsertFile.ParamByName('pfad').AsString := OpenDialog1.FileName;
cmdInsertFile.Execute;
[EDIT]Habs jetzt auch mal mitn ADO-Query versucht, da kommt das gleiche raus.[/EDIT]
Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#8

Re: [MySQL] Wie bekomme ich '\' ins Record?

  Alt 10. Sep 2004, 10:21
Zitat von Akut-Programming:
Ich nutze die ADO Komponenten.. ...
Bei den ADOs ist der Syntax etwas anders:
Delphi-Quellcode:
  ADOCommand1.Parameters.ParamByName('pfad').DataType := ftString; // Typ zuweisen (string)
  ADOCommand1.Parameters.ParamByName('pfad').value := OpenDialog1.FileName; // Wert zuweisen
Geht mit ADOCommand und ADOQuery.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#9

Re: [MySQL] Wie bekomme ich '\' ins Record?

  Alt 10. Sep 2004, 10:26
beicmdInsertFile.Parameters.ParamByName('pfad').DataType := ftString; // Typ zuweisen (string) bekomme ich die Meldung "undefinierter Bezeichner ftString"
Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#10

Re: [MySQL] Wie bekomme ich '\' ins Record?

  Alt 10. Sep 2004, 10:29
Ist die Unit DB eingebunden?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 03:23 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