|  |  | 
|  | 
|  | 
| - Seite 1 - | 
| 
 
 | 
|  Martin
 Kempf
 | | Ich versuche mal wieder, meiner Firebird Embedded Datenbank das Arbeiten mit gesammelten Transaktionen beizubringen - mir fehlt aber der Parameter für die Containerfunktionen: 
 db("fbExec", "#TRANSACTION", N%)
 db("fbExec", "#COMMIT",N%)
 db("fbExec", "#ROLLBACK",N%)
 
 was ist N%??
 | 
 | 
|  | 
|  |  | 
|  | 
| 
 
 
 | 
|  | 
| « Dieser Beitrag wurde als Lösung gekennzeichnet. » | 
|  | 
|  Michael
 W.
 | | Dann schreib' das Token "#TRANSACTION" mal groß. | 
 | 
|  | 
|  |  | 
|  | 
|  | 
| 
 
 
 | 
|  | 
|  Georg
 Teles
 | | Unter dem Punkt 11.9 bzw. 11.10 ist N% = m (Modus) 
 1 = Integer-Typ
 2 = numerischer Typ mit Nachkommastellen
 3 = String-Typ
 4 = BLOB
 
 s.  [...]
  (der Link wird zu httpS umgewandelt, einfach mit http öffnen) 
 Grüße
 | 
 | 
|  | 
|  |  | 
|  | 
| 
 
 
 | 
|  | 
|  RGH
 | | Die Bedeutung von N% ist bei db("fbExec", ...) doch erklärt: 
 N% = Modus:
 
 0 :  Das Ergebnis wird direkt im Hauptfenster angezeigt (eher für DebuggingZwecke)
 
 1 :  Das Ergebnis  wird es in eine Listboxliste geschrieben. Der erste Eintrag ist die Titelzeile mit den Feldnamen, der zweite eine Trennlinie
 
 2 :  Das Ergebnis wird es in eine Datei geschrieben, deren Dateiname mit set("SQLFile", name) festgelegt wird. Hat der Dateiname die Endung".xml" wird es im XML-Format geschrieben, bei der Endung ".json" im JSON-Format, ansonsten als normale Textdatei. Mit Set("SQLDel" und Set("SQLNull" kann das Ausgabeformat eingestellt werden.
 
 -1:  Das Ergebnis  wird es in eine Listboxliste geschrieben. Der Modus -1 ist identisch mit dem Modus 1, liefert aber in der ersten Listbox-Zeile nicht nur die Namen der Felder, sondern - getrennt durch ein ":" - auch den Feldtyp. Hierbei bedeuten: 1 = Integer-Typ / 2 = numerischer Typ mit Nachkommastellen / 3 = String-Typ / 4 = BLOB
 
 >2: Handelt es sich beim letzten Parameter um das Handle einer Gridbox, wird das Ergebnis in diese geschrieben, wobei die Spalten und Überschriften der Tabelle in die Gridbox übernommen werden.
 
 Hinweis: Die Rückgabe des SQL-Befehls wird entsprechend des Modus zurückgeschrieben. Das ist natürlich besonders interessant bei SELECT-Befehlen, bei anderen ist es eher irrelevant. Die 0 sollte man dann nicht verwenden, da ein "Ok" oder "n Sätze bearbeitet" wohl selten auf dem Bildschirm erwünscht ist.
  
 Gruß
 Roland
 | 
 | 
|  | 
|  | | Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 20.12.2020  ▲ | 
 | 
|  | 
| 
 
 
 | 
|  | 
|  Martin
 Kempf
 | | ok, dann haut was nicht hin... Ich hatte es vermutet, dass es der Modus wäre, allerdings bekomme ich eine Fehlermeldung, wenn ich es so angebe: "Falscher Parametertyp: 1
 Zeile...
 db("fbExec", "#transaction", 1)
 selbe Fehlermeldung auch bei Modus 0 und 2....
 | 
 | 
|  | 
|  |  | 
|  | 
| 
 
 
 | 
|  | 
|  Michael
 W.
 | | db("fbExec", "#transaction", 1) 
 Wenn ich mir den Befehl in dieser Form anschaue, dann frage ich mich:
 
 "Für welche Datenbankdatei denn...." (also fehlt das Handle)
 
 db("fbExec", H, S, N)
 
 H: Integer - Handle der Datenbank
 S: String - SQL-Statement
 N: Integer  - Modus
 
 Immer noch einmal mit der Hilfedatei abgleichen; passiert auch mir immer noch.
 Z.B. ist mir das in Deinem ersten Posting gar nicht aufgefallen...
 
 Ich habe übrigens nur "fbexec" ins Suchfeld der Hilfe eingetragen.
 Dort wird "db:fbSQLExec" gefunden (ein alternativer Name für "fbexec").
 
 Als "<container>:<name>" eingetragen findet die Suche die meisten Containerfunktionen direkt. Hier wird der Doppelpunkt in der Suche verwendet.
 | 
 | 
|  | 
|  | | System: Windows 8/10, XProfan X4Programmieren, das spannendste Detektivspiel der Welt.
 | 20.12.2020  ▲ | 
 | 
|  | 
| 
 
 
 | 
|  | 
|  Martin
 Kempf
 | | messerscharf ermittelt. db("fbExec", ep&, "#transaction", 0)
 bringt mir leider immer noch nicht das erwünschte Ergebnis sondern als Fehler "Invalid Token"...
 | 
 | 
|  | 
|  |  | 
|  | 
| 
 
 
 | 
|  | 
|  Michael
 W.
 | | Dann schreib' das Token "#TRANSACTION" mal groß. | 
 | 
|  | 
|  |  | 
|  | 
| 
 
 
 | 
|  | 
|  Martin
 Kempf
 | | gratuliere - das wars - da wär ich nie im Leben drauf gekommen... | 
 | 
|  | 
|  |  | 
|  | 
| 
 
 
 | 
|  | 
|  Michael
 W.
 | | Dafür ist das Forum ja da. 
  | 
 | 
|  | 
|  |  | 
|  | 
| 
 
 
 |