Skip to content

Commit

Permalink
sql plugins: fix NULL rows display value
Browse files Browse the repository at this point in the history
NULL row values are now correctly displayed as `NULL`
instead of `None`
  • Loading branch information
nil0x42 committed Aug 13, 2016
1 parent 38b6ad5 commit 28d190d
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 6 deletions.
7 changes: 5 additions & 2 deletions plugins/sql/mssql/plugin.py
Expand Up @@ -73,6 +73,9 @@ def load_credentials(raw_creds):
result['PASS'] = raw_creds[raw_creds.find('*')+1:]
return result

def sql_str_repr(row):
return "NULL" if row is None else str(row)

if len(plugin.argv) < 2:
sys.exit(plugin.help)

Expand Down Expand Up @@ -180,15 +183,15 @@ def load_credentials(raw_creds):
print(header % i)
j = 0
for field in fields:
print("%s: %s" % (field, row[j]))
print("%s: %s" % (field, sql_str_repr(row[j])))
j += 1
i += 1

elif display_mode == "column":
columns = [[str(field)] for field in fields]
for row in rows:
for i in range(len(fields)):
columns[i].append(str(row[i]))
columns[i].append(sql_str_repr(row[i]))
cols_len = [len(max(column, key=len)) for column in columns]
delimiter = '+-' + ('-+-'.join(['-' * i for i in cols_len])) + '-+'
for row_no in range(len(columns[0])):
Expand Down
7 changes: 5 additions & 2 deletions plugins/sql/mysql/plugin.py
Expand Up @@ -72,6 +72,9 @@ def load_credentials(raw_creds):
result['PASS'] = raw_creds[raw_creds.find('*')+1:]
return result

def sql_str_repr(row):
return "NULL" if row is None else str(row)

if len(plugin.argv) < 2:
sys.exit(plugin.help)

Expand Down Expand Up @@ -180,15 +183,15 @@ def load_credentials(raw_creds):
print(header % i)
j = 0
for field in fields:
print("%s: %s" % (field, row[j]))
print("%s: %s" % (field, sql_str_repr(row[j])))
j += 1
i += 1

elif display_mode == "column":
columns = [[str(field)] for field in fields]
for row in rows:
for i in range(len(fields)):
columns[i].append(str(row[i]))
columns[i].append(sql_str_repr(row[i]))
cols_len = [len(max(column, key=len)) for column in columns]
delimiter = '+-' + ('-+-'.join(['-' * i for i in cols_len])) + '-+'
for row_no in range(len(columns[0])):
Expand Down
7 changes: 5 additions & 2 deletions plugins/sql/oracle/plugin.py
Expand Up @@ -70,6 +70,9 @@ def load_credentials(creds):
sys.exit("couldn't parse ORACLE_CRED credentials: %s" % creds)
return result

def sql_str_repr(row):
return "NULL" if row is None else str(row)

if len(plugin.argv) < 2:
sys.exit(plugin.help)

Expand Down Expand Up @@ -160,15 +163,15 @@ def load_credentials(creds):
print(header % i)
j = 0
for field in fields:
print("%s: %s" % (field, row[j]))
print("%s: %s" % (field, sql_str_repr(row[j])))
j += 1
i += 1

elif display_mode == "column":
columns = [[str(field)] for field in fields]
for row in rows:
for i in range(len(fields)):
columns[i].append(str(row[i]))
columns[i].append(sql_str_repr(row[i]))
cols_len = [len(max(column, key=len)) for column in columns]
delimiter = '+-' + ('-+-'.join(['-' * i for i in cols_len])) + '-+'
for row_no in range(len(columns[0])):
Expand Down

0 comments on commit 28d190d

Please sign in to comment.