SOLVED: Multiline statement
Posted
#1
(In Topic #740)
Trainee
SQLString = SQLString & abc
SQLString = SQLString & edf….
I tried the VB method of an Underscore following by the next line beginning with an & but that did not work. With all the ' ", ' " required to insert variables I am unsure as to how to elegantly split these up over multiple lines.
Thanks in advance for any help.
Posted
Guru

CMWhitley said
Love Gambas and it is working very well. I have some long SQL type statements, and my limited mind cannot figure out the best way to accomplish it without just multiple lines of SQLString = SQLString & xyz
SQLString = SQLString & abc
SQLString = SQLString & edf….
I tried the VB method of an Underscore following by the next line beginning with an & but that did not work. With all the ' ", ' " required to insert variables I am unsure as to how to elegantly split these up over multiple lines.
Thanks in advance for any help.
There are these ways…
Code (gambas)
- SQLString &= "More text"
- SQLString &= "Even More text"
or these methods will work as multiline…
Code (gambas)
- SQLString = "some text\n" &
- "some more text\n" &
- "yet some more"
Ie.
Code (gambas)
- SQLString = "some text\n"
- "some more text\n"
- "yet some more"
Similar for commands/arrays using the comma ,
Ie..
MyCommand(arg1,
arg2,
arg3)
MyArray[Item1,
Item2,
Item3]
But note you will get problems with blank lines and positioning of ) ]
Ie.
Message.Question(
"My question"
)
that will fail.
Message.Question(
"My question")
will work
MyArray = [
Item1,
Item2
]
Will work
MyArray = [
Item1,
Item2
]
will fail
also when using multiline methods the IDE will loose the autocomplete ability when typing.
Posted
Regular

CMWhitley said
Love Gambas and it is working very well. I have some long SQL type statements, and my limited mind cannot figure out the best way to accomplish it without just multiple lines of SQLString = SQLString & xyz
SQLString = SQLString & abc
SQLString = SQLString & edf…
I tried the VB method of an Underscore following by the next line beginning with an & but that did not work. With all the ' ", ' " required to insert variables I am unsure as to how to elegantly split these up over multiple lines.
OK unthink that idea immediately. Its like trying to replace chocolate syrup with a sardine in a milkshake.
I was sure that there is a page in the wiki about multi-line string constants but I can't see it. So,
In the IDE (or more specifically in the source code for a class) a string can be continued on the next line simply by making it like this:
Code
Dim sMary as "Mary had a little lamb, "
"So what, I hear you ask "
"I had a little omelet"
Which is pretty easy, the string sMary is the theoretical "concatenation" of what looks like three strings. It's not, it's actually one string.
Now here is the bad news
You need to see the spaces!
If you try "SELECT *"
"FROM myStupidTable;"
You will get "SELECT *FROM myStupidTable"
which aint gunna work.
Posted
Trainee
Take care.
Posted
Regular

If you build your queries in an external tool, say something like dBeaver, you can copy your query and then in the IDE do a paste special (Shift + Ctl + V). In the popup there is an option down the bottom to paste "as multi-line string".
b
Posted
Trainee
thatbruce said
I forgot to mention!
If you build your queries in an external tool, say something like dBeaver, you can copy your query and then in the IDE do a paste special (Shift + Ctl + V). In the popup there is an option down the bottom to paste "as multi-line string".
b
Now that's something worth remembering. Thank you!
1 guest and 0 members have just viewed this.


