tomlei
Level-2
- Beiträge
- 139
- Reaktionspunkte
- 11
-> Hier kostenlos registrieren
Ich übergebe einem FC String und Real Variablen und setze sie mit Concat zusammen zu einem SQL String. Zrück bekomme ich den String.
Mit dem $' soll dem Text ein ' davor und danach hinzugefügt werden. Warum erscheint dann im String nicht nur das ' sondern auch das $ ??
Also:
'INSERT INTO PLC (entityName, entityValueReal) VALUES ($'Filter1$',6159.500),($'Filter2$',6148.890),($'ORI$',6235.000),($'4$',0000),($'5$',0000),($'6$',0000)'
Code:
IF #fld_entityName_DS1 <> '' THEN
#str1 := '';
#str1 := 'INSERT INTO PLC (entityName, entityValueReal) VALUES (';
#str_fld1_DS1 := CONCAT(IN1 := '$'', IN2 := #fld_entityName_DS1, IN3 := '$'');
#str_fld2_DS1 := "REAL_TO_STRF"(IN := #fld_entityValueReal_DS1, N := 3);
#str_fld1_DS2 := CONCAT(IN1 := '$'', IN2 := #fld_entityName_DS2, IN3 := '$'');
#str_fld2_DS2 := "REAL_TO_STRF"(IN := #fld_entityValueReal_DS2, N := 3);
#str_fld1_DS3 := CONCAT(IN1 := '$'', IN2 := #fld_entityName_DS3, IN3 := '$'');
#str_fld2_DS3 := "REAL_TO_STRF"(IN := #fld_entityValueReal_DS3, N := 3);
#str_fld1_DS4 := CONCAT(IN1 := '$'', IN2 := #fld_entityName_DS4, IN3 := '$'');
#str_fld2_DS4 := "REAL_TO_STRF"(IN := #fld_entityValueReal_DS4, N := 3);
#str_fld1_DS5 := CONCAT(IN1 := '$'', IN2 := #fld_entityName_DS5, IN3 := '$'');
#str_fld2_DS5 := "REAL_TO_STRF"(IN := #fld_entityValueReal_DS5, N := 3);
#str_fld1_DS6 := CONCAT(IN1 := '$'', IN2 := #fld_entityName_DS6, IN3 := '$'');
#str_fld2_DS6 := "REAL_TO_STRF"(IN := #fld_entityValueReal_DS6, N := 3);
#str_fld1_DS7 := CONCAT(IN1 := '$'', IN2 := #fld_entityName_DS7, IN3 := '$'');
#str_fld2_DS7 := "REAL_TO_STRF"(IN := #fld_entityValueReal_DS7, N := 3);
#str_fld1_DS8 := CONCAT(IN1 := '$'', IN2 := #fld_entityName_DS8, IN3 := '$'');
#str_fld2_DS8 := "REAL_TO_STRF"(IN := #fld_entityValueReal_DS8, N := 3);
#SQLString := CONCAT(
IN1 := #str1,
IN2 := #str_fld1_DS1,
IN3 := ',',
IN4 := #str_fld2_DS1,
IN5 := ')');
#SQLString := CONCAT(
IN1 := #SQLString,
IN2:= ',(',
IN3 := #str_fld1_DS2,
IN4 := ',',
IN5 := #str_fld2_DS2,
IN6 := ')');
#SQLString := CONCAT(
IN1 := #SQLString,
IN2 := ',(',
IN3 := #str_fld1_DS3,
IN4 := ',',
IN5 := #str_fld2_DS3,
IN6 := ')');
#SQLString := CONCAT(
IN1 := #SQLString,
IN2 := ',(',
IN3 := #str_fld1_DS4,
IN4 := ',',
IN5 := #str_fld2_DS4,
IN6 := ')');
#SQLString := CONCAT(
IN1 := #SQLString,
IN2 := ',(',
IN3 := #str_fld1_DS5,
IN4 := ',',
IN5 := #str_fld2_DS5,
IN6 := ')');
#SQLString := CONCAT(
IN1 := #SQLString,
IN2 := ',(',
IN3 := #str_fld1_DS6,
IN4 := ',',
IN5 := #str_fld2_DS6,
IN6 := ')');
#SQLString := CONCAT(
IN1 := #SQLString,
IN2 := ',(',
IN3 := #str_fld1_DS7,
IN4 := ',',
IN5 := #str_fld2_DS7,
IN6 := ')');
#SQLString := CONCAT(
IN1 := #SQLString,
IN2 := ',(',
IN3 := #str_fld1_DS8,
IN4 := ',',
IN5 := #str_fld2_DS8,
IN6 := ')');
END_IF;
Also:
'INSERT INTO PLC (entityName, entityValueReal) VALUES ($'Filter1$',6159.500),($'Filter2$',6148.890),($'ORI$',6235.000),($'4$',0000),($'5$',0000),($'6$',0000)'