AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Firedac Insert/Update

Ein Thema von Markus70 · begonnen am 31. Mär 2015 · letzter Beitrag vom 31. Mär 2015
Antwort Antwort
Markus70

Registriert seit: 21. Okt 2004
82 Beiträge
 
Delphi XE7 Professional
 
#1

Firedac Insert/Update

  Alt 31. Mär 2015, 16:19
Datenbank: MSSQL • Version: 2012 • Zugriff über: firedac
Hallo,

ich stelle gerade meine Anwendung auf XE7 mit Firedac um.

Warum verschluckt mir firedac bei
"update tbl_x set Feld = 'Hallo !Test 123' where ID=1"
den Teil des strings, der direkt an das ! folgt? - In der Datenbank kommt nur ein "Hallo 123" an.

VG
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#2

AW: Firedac Insert/Update

  Alt 31. Mär 2015, 16:21
Könnte es sein, daß "!" = Makro?

Und warum benutzt du keine Parameter?
update tbl_x set Feld = :feld where ID = :id
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: Firedac Insert/Update

  Alt 31. Mär 2015, 16:23
Die hast eine Makroersetzung aktiviert. Entweder Funktion deaktivieren, Sonderzeichen verdoppeln (!!) oder Parameter verwenden
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Firedac Insert/Update

  Alt 31. Mär 2015, 16:24
Weil du dir die Dokumentation nicht angesehen hast:
http://docwiki.embarcadero.com/RADSt...stext_(FireDAC)
Zitat:
Verarbeitung von Sonderzeichen

Gehen Sie folgendermaßen vor, um Sonderzeichen, wie "!", "&", ":", "?", "{" oder "}", an das DBMS weiterzugeben:
  • Verdoppeln Sie Sonderzeichen (z. B. "{{").
  • Stellen Sie für MySQL dem Sonderzeichen dieses Zeichen "\" voran (z. B. "\"").
  • Setzen Sie für "!", "&", "{", "}" ResourceOptions.MacroCreate, MacroExpand und EscapeExpand auf False.
  • Setzen Sie für ":", "?" ResourceOptions.ParamCreate und ParamExpand auf False.
Andernfalls werden die Zeichen "!", "&", "{", "}" als Makro-Anweisung und die Zeichen ":", "?" als Parametermarker behandelt, außer in den folgenden Fällen, wenn eine Konstruktion von FireDAC gefunden und nicht als Parametermarker behandelt wird:
  • Der Oracle PL/SQL-Zuweisungsoperator.
  • Die EXECUTE BLOCK-Parameter in BEGIN … END von Firebird.
  • Das Label TSQL.
  • Der PostgreSQL- und Informix-Umwandlungsoperator '::'.
  • Das Informix-Katalogzeichen ':'.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Markus70

Registriert seit: 21. Okt 2004
82 Beiträge
 
Delphi XE7 Professional
 
#5

AW: Firedac Insert/Update

  Alt 31. Mär 2015, 16:34
doku?

...und schon geht´s
  Mit Zitat antworten Zitat
Antwort Antwort


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 20:50 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