Merkwürdiges Sringverhalten

Alle Fragen zur Programmierung, die nicht in die speziellen Themen passen
Antworten
dagnor
Foriker
Beiträge: 32
Registriert: Mi 26. Jul 2017, 09:52
Kontaktdaten:

Merkwürdiges Sringverhalten

Beitrag von dagnor » Mo 14. Aug 2017, 10:16

Hallo,
jetzt fühle ich mich total blöd.
Ich verwende ein string SQL um Felddefinitionen aus einer Tabelle zu lesen und in eine eigene Tabelle für Weiterverarbeitung zu speichern. Dies hat schon funktioiert, ich muss unbeabsichticht ein Fehler eingebaut haben:

Code: Alles auswählen

   
   
      SQL = "show fields in " & TBT_tbl.Text
      Try rec = ma.$ConDB.Exec(SQL)
      ERRORHANDLING AUSGELASSEN
     For i = 0 To rec.Count - 1
        Select Case UCase(Left(rec!Type, 3))
          Case "INT", "DOU", "FLO", "TIN"
            ot = "ValueBox"
          Default
            ot = "ComboBox"
        End Select
        SQL = "insert into  fld"
        SQL = SQL & " set tbl='" & TBT_tbl.Text & "'"
        SQL = SQL & ", fldname='" & rec!Field & "'"
        s = rec!Field
        s = UCase(Left(s, 1)) & LCase(Right(s, (Len(s) - 1)))
        SQL = SQL & ", fptext='" & s & "'"
        SQL = SQL & ", ftvtext='" & s & "'"
        SQL = SQL & ", fldtyp='" & rec!Type & "'"
        SQL = SQL & ", ftvno=" & i
        SQL = SQL & ", fobjtyp='" & ot & "'"
        Print SQL '#1
        insert into  fld set tbl='web', fldname='id', fptext='Id', ftvtext='Id', fldtyp='int(11)', ftvno=0, fobjtyp='ValueBox'

        SQL = SQL & ", fobjno=" & i
        Print SQL #2
        jno=0, total amputiert
        Try ma.$ConGEN.Exec(SQL)
Das erste Print SQL '#1 Liefert

Code: Alles auswählen

        Print SQL '#1 
      	 insert into  fld set tbl='web', fldname='id', fptext='Id', ftvtext='Id', fldtyp='int(11)', ftvno=0, fobjtyp='ValueBox'
Das 2.te Print liefert

Code: Alles auswählen

        SQL = SQL & ", fobjno=" & i
        Print SQL #2
        jno=0, 
total amputiert
Ich habe so ein merkwürdiges Verhalten noch nie gesehen. Als hätte ich auf einmal ein Speicherproblem.
Das Programm versagt konsequent nach der Zeile

Code: Alles auswählen

SQL = SQL & ", fobjtyp='" & ot & "'"

Ich habe sie mit

Code: Alles auswählen

SQL = SQL & ", fobjtyp='TextBox'"
ausgetauscht, und in der nächse Zeile

Code: Alles auswählen

SQL= SQL & "Dies ist ein Test"
Das Resultat ist

Code: Alles auswählen

Print SQL
 ist ein Test
Ich hoffe sehr, dass ich nur etwas offensichtliches übersehe

LG

dagnor
Foriker
Beiträge: 32
Registriert: Mi 26. Jul 2017, 09:52
Kontaktdaten:

Re: Merkwürdiges Sringverhalten

Beitrag von dagnor » Mo 14. Aug 2017, 12:14

Hallo,

es war etwas offensichtliches. Ich hatte eine Zeile die mit & endete. Machte kein Fehler beim Start, aber machte ein falscher SQL-String


LG

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 Gäste