sqlui 0.1.7 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sqlui.rb +8 -6
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 428bf7cc27927c4639b1f03f645a10b7885c0413574ca09e405233573f20214a
4
- data.tar.gz: 74c6979b878bf52f5bd524960bba24a37c6e586421c991614df1496383717a28
3
+ metadata.gz: 841f89dc1fb61aa4395aca199aba43cd855e34e9641ea9cf2dc18b356b53cb93
4
+ data.tar.gz: f34d885b1c9f40e804fde6426bdfd7217ef912b2968b6987861ee6624fd60b27
5
5
  SHA512:
6
- metadata.gz: 99407ce252d89559853785e6e7ee70b93d0661d6005cf04465640936d3b4fcec455bc1806d18dd17e8d133bf1859c04072e8ffbd19ca9f6bc01c03a30163b928
7
- data.tar.gz: 33fd47d3d88fddcc38b3b252e7341dbd4f99d93b4fd52665ba3f2c4a58acabbf5c7052d0430cfd71c92053755f85e44be80d2e15d7a33879c19e00d2c89cf9ea
6
+ metadata.gz: dea76e1239e97123db860d4f7d729c2a8c317e827105f5ef9c690e23001a2dd5070ad594fe9b87036eeeefd545c004a1c64a51a4f6b48fa7e40cd1e43efdc286
7
+ data.tar.gz: 671cbc3930edda13b041dae163075e64b59e7069abaa299cb14121e9272c91887aea03165d69ffe4abb60ac49b1d5d6acfb8c72aae2c2c34c4e84877b8897220
data/lib/sqlui.rb CHANGED
@@ -174,13 +174,15 @@ class SQLUI
174
174
 
175
175
  def execute_query(sql)
176
176
  result = @queryer.call(sql)
177
- rows = result.rows
178
- column_types = result.columns.map { |_| 'string' }
177
+ rows = result.map { |row| row.values }
178
+ columns = result.first&.keys || []
179
+ column_types = columns.map { |_| 'string' }
179
180
  unless rows.empty?
180
- maybe_non_null_column_value_exemplars = result.columns.each_with_index.map do |_, index|
181
- rows.find do |row|
181
+ maybe_non_null_column_value_exemplars = columns.each_with_index.map do |_, index|
182
+ row = rows.find do |row|
182
183
  !row[index].nil?
183
- end.try(:[], index)
184
+ end
185
+ row.nil? ? nil : row[index]
184
186
  end
185
187
  column_types = maybe_non_null_column_value_exemplars.map do |value|
186
188
  case value
@@ -197,7 +199,7 @@ class SQLUI
197
199
  end
198
200
  {
199
201
  query: sql,
200
- columns: result.columns,
202
+ columns: columns,
201
203
  column_types: column_types,
202
204
  total_rows: rows.size,
203
205
  rows: rows.take(@max_rows)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sqlui
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Dower