Deutsch
Forum

Firebird - 2

 
- Seite 1 -



H.Brill
Hätte eine Frage :
Ist die Einbettung von Variablen auch in Firebird möglich ?
db("fbSQLExec", hdb&, "CREATE TABLE PREISE (WG NUMERIC(2,0), NUM NUMERIC(4,0), ARTIKEL CHAR(50), EINHEIT CHAR(4), PREIS CHAR(12))", 1)

WhileLoop 0, GetCount(0) - 1

    WG      = SubStr$(GetString$(0, &LOOP), 1, "|")
    NUM     = SubStr$(GetString$(0, &LOOP), 2, "|")
    ARTIKEL = SubStr$(GetString$(0, &LOOP), 3, "|")
    EINHEIT = SubStr$(GetString$(0, &LOOP), 4, "|")
    PREIS   = SubStr$(GetString$(0, &LOOP), 5, "|")
    db("fbSQLExec", hdb&, "INSERT INTO PREISE (WG,NUM,ARTIKEL,EINHEIT,PREIS) VALUES (:WG,:NUM,':ARTIKEL ',':EINHEIT ',':PREIS ')" , 1)

EndWhile


In obiger Schleife möchte ich gerne eine Textdatei mit |
als Spalten-Trenner, die ich in die interne Listboxliste
eingelesen habe, in eine Firebird DB schreiben.

Ist das bei Firebird überhaupt möglich, bzw. oder ist die
Einbettung nur in SQL statthaft ?

Oder wie könnte man es auch noch machen ?
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
30.12.2015  
 



« Dieser Beitrag wurde als Lösung gekennzeichnet. »


H.Brill
So, habs selber rausgefunden.
Die embedded Variablen gehen nur, wenn sie
als Variablen mit Postfix ($,!,%,& usw.)
deklariert wurden. Da ich mittlerweile gerne
auch mit vorangestelltem Typ deklariere, ist
mir das auch nicht aufgefallen.

Wäre vielleicht ein Verbesserungsvorschlag,
wenn Roland auch diese Variablen mit einbezieht.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
30.12.2015  
 




Jörg
Sellmeyer
Ich kann es nicht wirklich beantworten, da ich mich mit diesem DB-Kram nicht auskenne.
Wenn, dann würde ich es so machen:
Declare txt1$,txt2$,txt3$
txt1$ = "..."
txt2$ = "..."
txt3$ = "..."
db("fbSQLExec", hdb&, "INSERT INTO PREISE (" + txt1$ + "," + txt2$ + "," + txt3$ + ") VALUES (:WG,:NUM,':ARTIKEL ',':EINHEIT ',':PREIS ')" , 1)

Bei den hinteren Angaben der Variablen bei Bedarf auch noch so verfahren.
 
XProfan X3
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
30.12.2015  
 




H.Brill
So, habs selber rausgefunden.
Die embedded Variablen gehen nur, wenn sie
als Variablen mit Postfix ($,!,%,& usw.)
deklariert wurden. Da ich mittlerweile gerne
auch mit vorangestelltem Typ deklariere, ist
mir das auch nicht aufgefallen.

Wäre vielleicht ein Verbesserungsvorschlag,
wenn Roland auch diese Variablen mit einbezieht.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
30.12.2015  
 



@Jörg: andersum, insert into preise (spalte,spalte,...) values (wert,wert,...)
 
30.12.2015  
 




Jörg
Sellmeyer
Ich sag ja, dass ich mich damit nicht auskenne - Recht hatte ich trotzdem
 
XProfan X3
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
30.12.2015  
 



War mir schon klar, wollte nur weil sichs gut merken lässt...
 
30.12.2015  
 




Jörg
Sellmeyer
H.Brill (30.12.2015)
So, habs selber rausgefunden.
Die embedded Variablen gehen nur, wenn sie
als Variablen mit Postfix ($,!,%,& usw.)
deklariert wurden. Da ich mittlerweile gerne
auch mit vorangestelltem Typ deklariere, ist
mir das auch nicht aufgefallen.

Wäre vielleicht ein Verbesserungsvorschlag,
wenn Roland auch diese Variablen mit einbezieht.


Das mit der Typendeklaration wird wahrscheinlich auch klappen. Du musst die Variablen dann aber auch richtig in den String einfügen. So wie du es oben gemacht hast, bleiben sie ja im String als Literal und nicht als Variable.
 
XProfan X3
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
31.12.2015  
 




H.Brill
Nö, das ist schon richtig so. Die XProfanhilfe sagt
bei db("SQLExec",....) :
db("SQLExec", "INSERT INTO ueb VALUES (:nummer%,:artikel$,:preis!)",0)

Das hat Roland bloß schon geschrieben, lange
bevor es die Typdeklaration mit z.B.

gab. Der Doppelpunkt vor der Variable zeigt an, daß es
sich im Befehl (String) für db("SQLExec",..) um eine
Variable handelt und dementsprechend ersetzt wird.

So, wie Roland es beim neuen Update von Freeprofan
mit den Strings allgemein eingebaut hat : [...] 

Dort wird im Stringliteral eine Variable anhand von
\:variable erkannt.

Wie schon bereits gesagt, hat Roland bei SQL das für die neue
Typ-Deklaration noch nicht berücksichtigt.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
31.12.2015  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

10.211 Betrachtungen

Unbenanntvor 0 min.
Thomas Zielinski07.02.2021
rquindt17.04.2020
Georg Teles26.01.2019
Pk07.03.2017
Mehr...

Themeninformationen

Dieses Thema hat 3 Teilnehmer:

Jörg Sellmeyer (3x)
H.Brill (3x)
iF (2x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie