# MySQL\_Exec

## `MySQL_Exec` (FB)

FUNCTION\_BLOCK MySQL\_Exec EXTENDS CBM.ETrig

**Kurze Beschreibung:**

> Dieser Funktionsbaustein führt einen MySQL-Befehl ohne Rückgabeergebnis aus, wie z. B. INSERT, UPDATE, DELETE, ALTER, DROP usw.

**Detaillierte Beschreibung:**\
Die MySQL-Befehle müssen mit einem Array aufgebaut werden. Die Länge des Arrays wird durch die GLOBALEN KONSTANTEN definiert.\
Die FBox basiert auf dem allgemeinen Verhaltensmodell „Etrig“, sodass Sie den aktuellen Prozesszustand in Ihrer Applikation verarbeiten und anzeigen können.

**Info zu MySQL\_Command:**\
Nicht-numerische SQL-Parameterwerte müssen mit Anführungszeichen (Apostroph = ‚) gekennzeichnet werden.\
Um ein Apostroph innerhalb eines CODESYS-Strings zu verwenden, müssen Sie es mit einem Dollarzeichen plus Apostroph ($‚) oder mit $27 deklarieren.

e.g:

```
MySQL_Command[0] := ‘SELECT * FROM table WHERE name =’
MySQL_Command[1] := ‘$27nonNumberValue$27 ‘;
```

{% hint style="warning" %}
**Achtung:** Maximale Länge für Identifikatoren sind 250 bytes.
{% endhint %}

InOut:

| Scope  | Name               | Type                                                                                        | Comment                                                                        |
| ------ | ------------------ | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| Inout  | `MySQL_Connection` | MySQL\_ConnectionString                                                                     | <p>MySQL connection string which holds the server and login<br>information</p> |
| Input  | `MySQL_Command`    | <p>ARRAY<br>\[0..gc\_MySQL\_iStatementMax]<br>OF<br>STRING(gc\_MySQL\_iStatementLength)</p> | MySQL command                                                                  |
| Output | `eError`           | ERROR                                                                                       | Error type                                                                     |
| Output | `sExecute_State`   | `STRING(200)`                                                                               | Current execute state                                                          |
