TwinCat 3 - Datenbankbefehle

Geisterkarle

Level-2
Beiträge
126
Reaktionspunkte
9
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich muss für ein neues Projekt mit TwinCat 3 in eine Datenbank schreiben/lesen.
Hab ein altes Projekt, wo ich sowas schon gemacht habe, aber das mit TwinCat 2 und auch der entsprechenden TF6420 in Version 2. Also "alles neu".
Und im aktuellen Zustand befinde ich mich für Tc3 noch in Gefühl "Verschlimmbessert" und könnte ranten... aber mal so ne Frage, weil ich aktuell noch komplett "Offline" bin und nichts am System testen kann:

Wenn ich den Datenbank-FB "FB_PLCDBCmdEvt" mit einem komplett fertigem, korrekten SQL-Befehl befülle (pExpression) und die ganzen Parameterdaten (pData, cbData, pParameter, cbParameter) auf eine "leere" Lokalvariable "POINTER OF BYTE" schauen lasse. Macht der Baustein das mit? Denn diese ganzen Parameterdaten verkomplizieren (für mich) die Sache nur!
Also ungefähr:

Code:
VAR
    DBAufruf: [COLOR=#3E3E3E]FB_PLCDBCmdEvt;[/COLOR]
    SQLBefehl: String(1000);
    DUMpData: POINTER TO BYTE;
    DUMpParameter: POINTER TO BYTE;
END_VAR

SQLBefehl := "UPDATE irgendwas aber korrekt";

DBAufruf.Execute(hDBID:= Datenbank.DB_NR,                
                pExpression:= SQLBefehl,
                cbExpression:= SIZEOF(SQLBefehl),
                pData:= DUMpData , 
                cbData:= SIZEOF(DUMpData), 
                pParameter:= DUMpParameter, 
                cbParameter:= SIZEOF(DUMpParameter)
                );
Geht das also "so einfach"? Oder muss ich, wenn ich den "Blödsinn" nicht will, auf den FB_SQL-Bereich mit Connect, CreateCMD, ... umsteigen? Der "PLC-Expert Mode" klingt aktuell noch vernünftiger! Weil der scheint einem tatsächlich ordentlich Arbeit abzunehmen!

Weiss da wer was? Oder bessere Ideen?

Danke schonmal!
grüßle
 
Du kannst auch in TC3 noch die TC2 Database Bibliothek verwenden. Mache ich selbst auch, weil ich dieses Verschlimmbesserungsgefühl ebenfalls habe.
 
Zurück
Oben