Erfolgserlebnis:
Delphi-Quellcode:
procedure Tfrmxml.btnmutClick(Sender: TObject);
const
XPATH = '
//Basket[%d]/@path';
XANZAHL = '
//Baskets/@totalNumber';
var
doc: IXMLDOMDocument2;
n: IXMLDOMNode;
sqltext:
string;
s:
string;
begin
s:=chr(39);
// Hochkomma
// Briefkorb Pfad speichern
if CreateDocument(doc, dbMemo1.Text)
then
begin
n := doc.selectSingleNode(Format(XPATH, [strtoint(ednummer.text)-1]));
n.nodeValue:=(edpfad.text);
// sqltext:=stringreplace(sql_update_xml,'$benutzername',s+edbenutzername.text+s,[rfIgnoreCase]);
// sqltext:=stringreplace(sqltext,'$xml',s+doc.xml+s,[rfIgnoreCase]);
datamodule2005.ADOQuery3.SQL.Text:=sql_update_xml;
datamodule2005.ADOQuery3.Parameters.ParamByName('
xml').Value:=doc.xml;
datamodule2005.ADOQuery3.Parameters.ParamByName('
benutzername').Value:=edbenutzername.text;
showmessage(datamodule2005.ADOQuery3.SQL.Text);
datamodule2005.ADOQuery3.ExecSQL;
end else ShowParseError(doc.parseError);
end;
Danke für den Tipp marabu. Mithilfe von Parametern scheint sich das Problem in Luft aufgelöst zu haben. Ist mir zwar nicht klar warum, aber ok.
Was ich noch ändern musste: doc.xml verwenden und nicht in Hochkomma in die
DB setzen.