Skip to content

Commit 6c970d2

Browse files
committed
if user forgets inner values, substitute with a 0.
1 parent 499dc88 commit 6c970d2

File tree

3 files changed

+19
-6
lines changed

3 files changed

+19
-6
lines changed

sqlbuilder.nimble

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Package
22

3-
version = "0.3.0"
3+
version = "0.3.1"
44
author = "ThomasTJdev"
55
description = "SQL builder"
66
license = "MIT"

src/sqlbuilder.nim

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,10 @@
213213
## # Credit
214214
## Inspiration for builder: [Nim Forum](https://github.com/nim-lang/nimforum)
215215

216-
import strutils, db_common, macros
216+
import
217+
std/db_common,
218+
std/macros,
219+
std/strutils
217220

218221
type
219222
ArgObj* = object ## Argument object

src/sqlbuilderpkg/select.nim

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,13 @@ proc sqlSelect*(table: string, data: varargs[string], left: varargs[string], whe
2828
acc.add("(")
2929
else:
3030
acc.add(" AND " & accessC & " in (")
31+
var inVal: string
3132
for a in split(access, ","):
32-
acc.add(a & ",")
33-
acc = acc[0 .. ^2]
33+
if a == "": continue
34+
if inVal != "":
35+
inVal.add(",")
36+
inVal.add(a)
37+
acc.add(if inVal == "": "0" else: inVal)
3438
acc.add(")")
3539

3640
when defined(testSqlquery):
@@ -73,9 +77,13 @@ proc sqlSelect*(table: string, data: varargs[string], left: varargs[string], whe
7377
acc.add("(")
7478
else:
7579
acc.add(" AND " & accessC & " in (")
80+
var inVal: string
7681
for a in split(access, ","):
77-
acc.add(a & ",")
78-
acc = acc[0 .. ^2]
82+
if a == "": continue
83+
if inVal != "":
84+
inVal.add(",")
85+
inVal.add(a)
86+
acc.add(if inVal == "": "0" else: inVal)
7987
acc.add(")")
8088

8189
when defined(testSqlquery):
@@ -120,6 +128,8 @@ macro sqlSelectMacro*(table: string, data: varargs[string], left: varargs[string
120128
for a in split($access, ","):
121129
acc.add(a & ",")
122130
acc = acc[0 .. ^2]
131+
if acc.len() == 0:
132+
acc.add("0")
123133
acc.add(")")
124134

125135
when defined(testSqlquery):

0 commit comments

Comments
 (0)